aboutsummaryrefslogtreecommitdiff
path: root/engines/agi
AgeCommit message (Collapse)Author
2016-02-09AGI: Fix skip auto-save slot code for auto-saveMartin Kiewitz
2016-02-09AGI: Check xPos/yPos when building sprite listsMartin Kiewitz
And ignore sprites, that are placed outside of visual screen Fixes memory corruption during intro of fan made Get Outta SQ game. Original AGI did not do checks at all.
2016-02-09AGI: Cut menu in case menu names are too longMartin Kiewitz
Required for games that add to many names or add names, that are too long. The code needs to get adjusted anyway for different platforms, so for now just cut the menu names instead Required for at least the fan game Get Outta Space Quest
2016-02-09AGI: Change set.simple string copy codeMartin Kiewitz
2016-02-09AGI: Fix various CIDsMartin Kiewitz
CID 1350104: regression from graphics rewrite in C64 picture drawing CID 1350101: potential buffer overflow in set.simple command CID 1350112: uninitialized variable in TextMgr CID 1350113: false positive uninitialized variable in SystemUI CID 1350114: potentially uninitialized variable in IIgsSample CID 1350117: false positive uninitialized variable in InventoryMgr CID 1350103: code bug in CGA rendering TextMgr::charAttrib_Set() CID 1350109: false positive in GfxFont::loadFontAmigaPseudoTopaz() CID 1350111: original AGI uninitialized memory issue in SpritesMgr::showObject
2016-02-07AGI: Resource checking for setView/setLoop/setCelMartin Kiewitz
Also loading view resources in case they are not loaded on set.view Fixes crash in Larry 1 for Apple IIgs after getting beaten up by taxi driver (was an original game bug). Even makes it work now. Original interpreter closed down in this situation. For setLoop() and setCel() error()s were added for this case to avoid crashes. Also: screenObj->viewData renamed to screenObj->viewResource
2016-02-07AGI: Stop set.simple getting called for <2.425Martin Kiewitz
Also stop it from getting called by 2.440 AGI. Was implemented for 2.425, removed in 2.440 and re-added in 2.917. The opcode is called after answering the phone at the store (555-6969) in Apple IIgs Larry. It can't be automatic saving. See script 22, line 678 in AGI Studio. Stops automatic saving getting enabled for Larry 1 Apple IIgs. Also added warning messages to other commands as well.
2016-02-07AGI: Do not set TIME_DELAY at all on restartMartin Kiewitz
Original AGI did not do it and it would ruin the game speed of at least Larry on Apple IIgs after dying.
2016-02-07AGI: Fix regression from stringWordWrap rewriteMartin Kiewitz
Space at the end of the string was handled inaccurately Fixes kq1 text scrolling bug #7021 Rewrite was done in commit efb65324688f20cc534a25312f558f9264125762
2016-02-06AGI: Move debugger to Ctrl-Shift-DMartin Kiewitz
because of Police Quest 1 using Ctrl-D for calling dispatch. Solves FR #395
2016-02-06AGI: Switch to CLUT3 for Macintosh as defaultMartin Kiewitz
2016-02-05AGI: Adding Macintosh palettes for GR+SQ2Martin Kiewitz
But not actually using the GR palette, because it looks horrible.
2016-02-05AGI: Make it possible to also force CGA/EGA/VGAMartin Kiewitz
...rendering
2016-02-05AGI: fix build powf() -> pow()Martin Kiewitz
2016-02-05AGI: Render mode Macintosh addedMartin Kiewitz
Palette + mouse cursor + box frame color only atm Thanks to wjp for gamma correction Not sure, if our current color adjustment is correct Should be checked by using actual hardware
2016-02-05AGI: GfxMgr::drawBox now using kRenderMacintoshMartin Kiewitz
2016-02-05AGI: Rewrote stringWordWrap()Martin Kiewitz
Original code wasn't accurate
2016-02-04AGI: Restrict hide.mouse to AGI3 onlyMartin Kiewitz
Command seems to not have existed in at least 2.917 (PC). Space Quest 2 on Apple IIgs calls it during intro, but never calls show.mouse. SQ2 on other platforms does not make this call. Mouse cursor is not hidden under emulator, so atm I have to assume that it's either a dodgy script or there was something else hacked into the interpreter back then. This fixes Space Quest 2 Apple IIgs losing mouse cursor, when the intro is not canceled.
2016-02-04AGI: Fix Hold-Key-Mode implementationMartin Kiewitz
Hold-Key-Mode got introduced v2.425, it was simply not possible to disable it until 3.098. Now creating a AGI_KEY_STATIONARY event, so that it works properly Fixes Mixed Up Mother Goose
2016-02-04AGI: Fix mouse code for transitionsMartin Kiewitz
Do not show mouse cursor after transition, when it's currently switched to hidden. Do the same for hide/show.mouse opcodes.
2016-02-04AGI: Add verbose flags to debug command screenobjMartin Kiewitz
2016-02-04AGI: Fix cursor position after save game descr.Martin Kiewitz
Cursor was placed incorrectly after entering saved game description using original load/save dialogs.
2016-02-04AGI: More accurate menu mouse supportMartin Kiewitz
Menu items did not switch to inverted state when they are disabled.
2016-02-04AGI: Add Atari ST system UI buttonsMartin Kiewitz
2016-02-04AGI: Add buttons to save/restore verify dialogsMartin Kiewitz
2016-02-04AGI: Add Amiga system UI buttonsMartin Kiewitz
Also adjust window frames for Amiga. Amiga also uses hi-res ones.
2016-02-04AGI: Add Apple IIgs system UI buttonsMartin Kiewitz
For Restart/Quit/Pause dialog
2016-02-04AGI: Fix disabled look to work properly in menusMartin Kiewitz
2016-02-03AGI: Add different window frames for MacintoshMartin Kiewitz
Also work on drawCharacter code for SystemUI usage
2016-02-03AGI: Add different window frames for Apple IIgsMartin Kiewitz
Only slightly different than on PC
2016-02-03AGI: Message box mouse supportMartin Kiewitz
2016-02-03AGI: Rename WINDOWRESET to WINDOW_AUTO_CLOSE_TIMERMartin Kiewitz
2016-02-03AGI: Increase time delay for Apple IIgsMartin Kiewitz
It seems that either Apple IIgs ran very slowly or that its AGI interpreter didn't do the delays as on all the other platforms. Further investigation needed Fixes all sorts of games running now way too fast.
2016-02-03AGI: Remove unused initialized variableMartin Kiewitz
2016-02-03AGI: Remove _game.state, not needed anymoreMartin Kiewitz
2016-02-03AGI: Change cycle delay handling, seems to fix GRMartin Kiewitz
Removed pollTimer() Renamed pause() to wait() Doing 10 msec delays instead of at least 50 msec per EventProcess Seems to fix weird Gold Rush ingame timer issue?! bug #4147
2016-02-03AGI: Cycle event processing changedMartin Kiewitz
processEvents() renamed to processScummVMEvents() mainCycle() renamed to processAGIEvents() have.key now sets up an inner loop and calls processAGIEvents() to avoid any further cycle work processing
2016-02-03AGI: Call update screen in have.key for nowMartin Kiewitz
Some games call it in an endless loop until a key is returned
2016-02-03AGI: Make inner loop handlers consistentMartin Kiewitz
2016-02-03AGI: Implement messageBox() as inner loopMartin Kiewitz
Also remove _game.keypress, _game.msgBoxTicks
2016-02-03AGI: Remove Gold Rush workaround, no longer neededMartin Kiewitz
2016-02-03AGI: Fix regression of have.key changesMartin Kiewitz
original commit 8269a94bcd55200f7ae8aba00c7b6fd0d37b9a37 Now hopefully properly implemented. Adjusted a few more inaccuracies (we set v19 to 0, where we shouldn't have)
2016-02-02AGI: add drawCharacterOnDisplay()Martin Kiewitz
2016-02-02AGI: Remove inputMode, not needed anyoreMartin Kiewitz
2016-02-02AGI: test commands cleanupMartin Kiewitz
2016-02-02AGI: Use inner loop functionality for have.keyMartin Kiewitz
Also do it like the original interpreter did it
2016-02-02AGI: Don't pause in game timer while in menusMartin Kiewitz
Original interpreter did not do it and we paused music/sfx, which the original interpreter also didn't do. Shouldn't cause issues.
2016-02-02AGI: code formattingMartin Kiewitz
2016-02-02AGI: Fix formatting.Johannes Schickel
This mostly enforces tabs for indentation and spaces for formatting. But also fixes spaces on empty lines, some extra/missing spaces. astyle + manual fixup
2016-02-02AGI: Add WORKAROUND comment to "render after menu"Martin Kiewitz
see commit 0b75bf37219cf49f274da330a44e81068152599c Original AGI did not do, what we are doing now