Commit Graph

125 Commits

Author SHA1 Message Date
Sven Hesse
c65886a3ea Changing the Urban Runner sprite drawer to work more correctly. It does use YUV data, but I can use the ditherer there
svn-id: r35308
2008-12-11 21:57:47 +00:00
Sven Hesse
5d9c8b7c47 Changing the GobEngine to use its dirty rects also for OSystem-copies, instead of relying on kFeatureAutoComputeDirtyRects
svn-id: r35239
2008-12-04 18:38:55 +00:00
Sven Hesse
353a239bdb Preliminary support for extra data and scripts in video files (urgh, this is so...vile).
Used in The Last Dynasty, which now plays a bit further (the video sequences, at least)

svn-id: r35227
2008-12-03 22:14:47 +00:00
Sven Hesse
8da68b2964 Script variables are now always stored in the game version's native endianess.
This should make Woodruff playable on big-endian systems.

svn-id: r32352
2008-05-28 21:15:11 +00:00
Sven Hesse
220d6ce82f Restructured sound code
svn-id: r31937
2008-05-08 00:47:23 +00:00
Sven Hesse
001adf1bb3 Enabled scrolling in Woodruff
svn-id: r31855
2008-05-04 01:02:27 +00:00
Paul Gilbert
6eb64102a4 Fix to remove a tab character from the GPL header
svn-id: r30238
2008-01-05 12:45:14 +00:00
Nicola Mettifogo
258901bab9 Merged common/stdafx.h into common/scummsys.h. All referencing files have been updated.
svn-id: r28966
2007-09-19 08:40:12 +00:00
Sven Hesse
34292a6b58 Minor DataIO-cleanup
svn-id: r28349
2007-07-31 01:43:32 +00:00
Sven Hesse
f06f150c76 Restructured and cleaned-up IMD playing
svn-id: r28327
2007-07-30 15:53:38 +00:00
Sven Hesse
d8e4d70b67 The language fallback now prefers the other english if USA or GRB was requested but wasn't found in the game data.
svn-id: r28237
2007-07-27 13:05:24 +00:00
Sven Hesse
99a707d89e Added a few safety checks. Now Woodruff shows the loading image (closely followed by a crash).
svn-id: r28203
2007-07-25 20:36:14 +00:00
Sven Hesse
5c588e1f5e Updated loadExtData() for Woodruff. Now the Sierra logo is shown (then it crashes / freezes)
svn-id: r28188
2007-07-25 04:52:12 +00:00
Sven Hesse
09c2ea82de - Separated game type and features
- Added feature constants for a 640x480 resolution and adlib
- Added support for game with a 640x480 resolution. Woodruff now inits the screen before it segfaults

svn-id: r28185
2007-07-24 23:24:40 +00:00
Max Horn
218e132e37 Updated legal headers in source files, based on what Pidgin (the IM client formerly knowns as Gaim) does; added new (incomplete) COPYRIGHT file; updated copyright dates in a few spots
svn-id: r27024
2007-05-30 21:56:52 +00:00
Sven Hesse
0504f18e9f - Added a workaround for bug #1705338 (Seg fault when trying to switch screen in music land) which is actually a script bug.
- Fixed the scrolling bug (#1709574) (the mouse cursor is still shown, that's an instance of the global cursor visibility issue)

svn-id: r27010
2007-05-30 10:20:21 +00:00
Sven Hesse
54b8a4d06f Made the collisionAreas' coordinates unsigned. This should fix bug #1706988
svn-id: r26715
2007-05-01 14:49:13 +00:00
Sven Hesse
28df3debfd - Fixed handling of the case split screen + vertical scrolling area
- Added manual vertical scrolling
- Restricting the mouse cursor to the upper part of the split screen now

svn-id: r26547
2007-04-19 13:51:57 +00:00
Sven Hesse
7d7cee6649 Fix scroll handler
svn-id: r26541
2007-04-17 09:40:10 +00:00
Sven Hesse
bd69261cf5 Bargon Attack uses wide surfaces, but shouldn't scroll in-game regardless
svn-id: r26522
2007-04-16 05:04:41 +00:00
Paweł Kołodziejski
ae7c640671 fixed warnings
svn-id: r26506
2007-04-15 15:40:24 +00:00
Sven Hesse
7370c5aa12 The scrolling now works without cursor jittering...
svn-id: r26458
2007-04-13 07:48:26 +00:00
Sven Hesse
9c7a8bd963 Preventing scrolling while the menu is shown
svn-id: r26440
2007-04-09 18:29:51 +00:00
Sven Hesse
ec5a9eee31 - Minor cleanup
- Added Inter_v3 (for new opcode o3_getTotTextItemPart)
- Some fixes to let Gob3 start with the first screen

svn-id: r26383
2007-04-05 13:37:20 +00:00
Sven Hesse
53119f2c5d "char *" -> "byte *" where appropriate
svn-id: r26369
2007-04-02 11:05:09 +00:00
Sven Hesse
d65e05841a - Fixed the IMD playing within mults, the non-interactive Gob3 demo should work better now
- Replaced strcpy with strncpy where appropriate
- Added detection entries for other languages of the multilingual Gob3 CD; bug #1691230

svn-id: r26327
2007-03-30 17:52:31 +00:00
Sven Hesse
623ca88022 - Properly implemented the ImdPlayer
- Some more clean-up

svn-id: r26316
2007-03-29 17:55:39 +00:00
Sven Hesse
2dc7cb2cd4 Major clean-up, including:
- Cutting down the code-dup
- Plucking leaks
- Removing dead/unused code
- Properly naming "word_2342F"-style variables and functions (removing the warnings alongside)
- Fleshing out the "stubby" functions
- Moving functions and variables to more appropriate/logical places
- Re-ordering functions and variables
- Re-structuring functions
- Moving the IMD stuff into a new "Imd" class in the new imd.cpp/.h (still to be completely implemented and cleaned up)
- Formatting
- Getting rid off the classes "Anim", "Pack" and "Timer", along with their files

svn-id: r26252
2007-03-20 14:51:57 +00:00
Eugene Sandulenko
289466e8b7 Fix MSVC warning
svn-id: r25558
2007-02-13 20:35:44 +00:00
Sven Hesse
15f52b96b8 Changed language finding again
svn-id: r25525
2007-02-12 14:37:27 +00:00
Sven Hesse
6b2d843680 - Some fixes for demos and Amiga versions
- Improved language finding a bit

svn-id: r25520
2007-02-12 12:53:28 +00:00
Sven Hesse
3442ea1582 - Fixed another freeze in Ween
- Changed cursor visibility handling a bit

svn-id: r25407
2007-02-07 13:08:17 +00:00
Sven Hesse
7f26069f69 - Moved struct Mult_Data from Mult_v2 to Mult and merged Mult::_multData, Mult::_multData2 and some of the loose variables in Mult
- Added some missing MD5s/game versions (#1652352)

svn-id: r25393
2007-02-05 14:08:50 +00:00
Sven Hesse
f54a97a02c - Plugged some leaks and fixed some memory errors
- Fixed the cursor animation loops in Ween and Bargon
- Added Draw_Bargon + Inter_Bargon
- Implemented Bargon Attack's hardcoded intro parts

svn-id: r25387
2007-02-04 15:45:15 +00:00
Sven Hesse
17e70efe13 - Snd::WaitEndPlay() should stop a running composition
- Removed Snd::getCompositionSlot(), it's not needed

svn-id: r25310
2007-01-31 15:19:42 +00:00
Sven Hesse
7101c0ef26 - Correctly setting of Snd::_playingSound
- Implemented sound fading in/out
- o2_stub0x81 -> o2_scroll

svn-id: r25307
2007-01-31 13:17:50 +00:00
Sven Hesse
cb8378065d - Changed _soundFlags and implemented "compositions"
- Changed Snd to be a permanent audiostream, to have better control over stopping, looping and compositions
- Some clean-up

svn-id: r25292
2007-01-30 22:19:55 +00:00
Sven Hesse
36a54218b1 - Another attempt at fixing the immediately-closing notepad heisenbug (#1621089)
- Implemented wide surfaces + scrolling
- Some clean-up

svn-id: r25253
2007-01-29 17:04:37 +00:00
Sven Hesse
c238912315 Ooops
svn-id: r25246
2007-01-28 15:24:22 +00:00
Sven Hesse
b13e7ce8ec - Fixed the Adlib data ugliness
- Worked around the caching of raw sprite video memory to a file

svn-id: r25244
2007-01-28 13:19:17 +00:00
Sven Hesse
8e6cd81333 - Just warn, don't die, when a CD-Track isn't found
- Before using _vm->_adlib, first check whether it's actually there

svn-id: r25205
2007-01-26 19:00:41 +00:00
Sven Hesse
604077827f - Some clean-up
- Fixed sound playing and looping
- Changed Paula to use non-absolute panning, defaulting to 0.25/0.75 and 0.75/0.25, as per madmoose's suggestion
- Prepared/Cleaned-up Paula and Infogrames for the move to sound/mods/

svn-id: r25189
2007-01-25 14:18:12 +00:00
Sven Hesse
a8c6b02a9c Added support for Infogrames/RobHubbard2 (amiga) music
svn-id: r25160
2007-01-23 19:40:28 +00:00
Eugene Sandulenko
24c9735588 Rename special debug levels to conform our suggested naming scheme.
svn-id: r25073
2007-01-13 15:35:02 +00:00
Sven Hesse
6e0835da11 - Fixed cut off and missing sounds
- Fixed a crash/static reported in the forums (sending Winkle to the vulture)
- (Hopefully) fixed the immediately-closing notepad heisenbug (#1621089)
- Fixed using unitialised values after allocating the variables

svn-id: r25025
2007-01-06 11:17:20 +00:00
Sven Hesse
9afb08341c - Properly implemented o2_getCDTrackPos()
- Each save has now its own file (.s??). They also should be endian-safe now
  (Can be disabled for testing by uncommenting #define GOB_ORIGSAVES in gob.cpp)
- General endianness-fixes

svn-id: r24794
2006-11-27 14:19:30 +00:00
Sven Hesse
2768fa24fc - Fixed the crashes in Gob1 EGA and Gob2 Demo
- Fixed the compile error in GobEngine::saveGame on some systems

svn-id: r24756
2006-11-21 13:28:45 +00:00
Sven Hesse
c22920484a Changed the way sprites-freeing is handled, now the menu sprites and window decorations are drawn
svn-id: r24752
2006-11-20 13:03:30 +00:00
Sven Hesse
2454f78589 Implemented (currently still endian-unsafe) save/load
svn-id: r24745
2006-11-19 17:52:52 +00:00
Johannes Schickel
7b0e6f1489 formatting.
svn-id: r24720
2006-11-14 15:39:11 +00:00
Sven Hesse
3f0ebaaa18 Fixed the lock when leaving the menu
svn-id: r24719
2006-11-14 14:58:41 +00:00
Sven Hesse
6ee511e68b Added another field to the GameSettings for the intro.tot, because the Gobliins 2 demo uses usa.tot
instead

svn-id: r23701
2006-08-12 12:35:18 +00:00
Sven Hesse
1c4715b71f - Some more goblins-handling functions
- Fixed some mistakes I made in the Parse_v2 functions. Now the goblins
  (finally) move. Also, the correct music is played in the first screen.
- Found the hook for the menu
- On freeing a sound slot, only stop the playing music if it's in the
  slot to free

svn-id: r23700
2006-08-12 09:16:08 +00:00
Sven Hesse
dcbbfa01c0 Instead of drawing the mouse cursor as a sprite, let the backend handle it
svn-id: r23464
2006-07-09 18:54:12 +00:00
Sven Hesse
27a8b8a255 - Renamed a few mult-variables to something more fitting
- Fixed a small mistake, making the entering animation work
- Correcting Game_v2::playTot() so that the loading screen is shown
- Updated most of the collisions stuff, the objects names hint stuff works now

svn-id: r23346
2006-06-29 12:55:57 +00:00
Sven Hesse
243e6b2d27 Fixing Scenery::_statics, Game::_totTextData and Game::_totResourceTable
svn-id: r23078
2006-06-13 08:10:54 +00:00
Johannes Schickel
276d754443 Fix some msvc8 warnings.
svn-id: r22988
2006-06-08 19:55:16 +00:00
Sven Hesse
bf86b9b022 Two segfault and several coding style related fixes
svn-id: r22954
2006-06-06 15:43:44 +00:00
Sven Hesse
b5bc1c82fa - Fixed endianness/signess issues
- Added a memset in Video_v2::SpriteUncompressor(), that should have
  been there in the first place; this fixes the tree in GOB2's first room
- Fixed ADL delete[]ing

svn-id: r22917
2006-06-04 17:24:03 +00:00
Sven Hesse
2aa31f4bf3 Matched the memset in imdFrameUncompressor() to the original asm, that
fixes a small glitch

svn-id: r22857
2006-06-03 08:50:41 +00:00
Sven Hesse
f3f7b670d0 - Fixed IMD transparency
- Fixed SegFault due to uninitialized _multData2
- Removed left-over debug comment

svn-id: r22830
2006-06-02 10:54:53 +00:00
Sven Hesse
05499f58dd - Removed usage of OSystem::quit(), added a _quitRequested variable
- Fixed some leaks, unitialized memory and delete/delete[]-errors

svn-id: r22790
2006-05-31 08:44:14 +00:00
Sven Hesse
d6f1ba1540 - More GOB2 map conversions
- Added Music_Dummy (for --music-driver=null)
- Implemented IMDs. That took longer than I expected...
  On the bright side, Ween's intro now plays more correctly

svn-id: r22754
2006-05-29 18:24:52 +00:00
Sven Hesse
42e03bd707 - Sound! Still a bit glitchy, though:
- Negative frequences?!? Maybe "SFX"?
  - No sound for a small part of the intro
    (there aren't any sndKeys covering that part either)
  - A rythm-instrument (hi-hat?) in the titlemusic isn't played as one
- More differences in the drawing functions fleshed out
- Some of the goblin handling functions written
- More unnamed functions and variables, wheeee...

svn-id: r22410
2006-05-11 19:43:30 +00:00
Sven Hesse
2eabfd5f28 - More differences in Draw_v2::spriteOperation()
- GOB2 handles _frontSurface/_backSurface a bit differently, this fixes
  (most of) the drawing glitches in the intro
- Added using a fallback when the user's game version doesn't have the
  requested language
- off_2E51B et al. stubs, I think it has something to do with the menu

svn-id: r22254
2006-05-01 12:43:50 +00:00
Sven Hesse
ab48280f73 - I misunderstood Draw::initBigSprite(); fixed
- Changed Draw::spriteOperation() for blitting from/to/between and
  fillrecting to big sprites
- Enabled drawing of text

svn-id: r22001
2006-04-18 09:59:18 +00:00
Sven Hesse
3bed2d377e Some more stubs and rearrangings
svn-id: r21847
2006-04-13 20:56:22 +00:00
Max Horn
8cdee5a931 Do not #include endian.h in scummsys.h (cuts down deps on endian.h from ~400 to ~250). Many greetings to eriktorbjorn, and have fun recompiling.
svn-id: r21500
2006-03-29 15:59:37 +00:00
Max Horn
d9a9fac937 Fixed tons of format string warnings for debug/error calls (including several errors where the format string didn't match the number of arguments to the call)
svn-id: r21141
2006-03-08 11:37:25 +00:00
Willem Jan Palenstijn
06e02f6010 stop playing a sample before deleting the sample data
svn-id: r20902
2006-02-26 01:25:27 +00:00
Sven Hesse
1758260c39 Changed debug()s to debugC()s
svn-id: r20848
2006-02-24 23:31:31 +00:00
Sven Hesse
ca504aca4f Adding GOB2's CD handling opcodes, the CD version of GOB2 now starts
correctly; playMult() doesn't work yet, though

svn-id: r20844
2006-02-24 21:58:03 +00:00
Eugene Sandulenko
c50da10571 Fix compiler error introduced by last commit.
svn-id: r20808
2006-02-21 16:16:56 +00:00
Eugene Sandulenko
6011d302c3 Fix crash on floppy version of gob2
svn-id: r20807
2006-02-21 16:15:07 +00:00
Max Horn
26ee630756 Moved engines to the new engines/ directory
svn-id: r20582
2006-02-11 22:45:04 +00:00