aboutsummaryrefslogtreecommitdiff
path: root/engines/agi/graphics.cpp
AgeCommit message (Collapse)Author
2018-10-11AGI: Clamp Graphics Blit into Screen Area.D G Turner
Some games, especially fangames appear to blit to co-ordinates outside the screen area, which caused an assertion in the graphics backend. To prevent this and allow further debugging in these cases, we clamp this to the screen area. Note that there are several other locations which do backend graphics calls, so this may need to be applied elsewhere in the general case. This fixes bug Trac #10736.
2017-10-07ENGINES: Remove default1x scaler flagColin Snover
This flag is removed for a few reasons: * Engines universally set this flag to true for widths > 320, which made it redundant everywhere; * This flag functioned primarily as a "force 1x scaler" flag, since its behaviour was almost completely undocumented and users would need to figure out that they'd need an explicit non-default scaler set to get a scaler to operate at widths > 320; * (Most importantly) engines should not be in the business of deciding how the backend may choose to render its virtual screen. The choice of rendering behaviour belongs to the user, and the backend, in that order. A nearby future commit restores the default1x scaler behaviour in the SDL backend code for the moment, but in the future it is my hope that there will be a better configuration UI to allow users to specify how they want scaling to work for high resolutions.
2017-08-06JANITORIAL: Silence some GCC 7 warningsTorbjörn Andersson
We have lots and lots of -Wimplicit-fallthrough warnings, and I don't know if it's worth fixing them or not. But if we want to, this is how it can be done.
2016-06-05AGI: More class initializationEugene Sandulenko
2016-05-25JANITORIAL: Remove unnecessary semicolonsTorbjörn Andersson
2016-05-22AGI: Fix invalid read (/crash), when shaking screenMartin Kiewitz
Was a regression caused by commit e1c36a52b561463217e22687605d2f4f1dc33be6 (upscaling + hercules font support) Thanks to salty-horse for reporting this issue
2016-02-28AGI: Hercules rendering for game screenMartin Kiewitz
2016-02-27AGI: Add support for upscaling and Hercules hires fontMartin Kiewitz
- User option to force Hercules hires font for any rendering mode - Also change mouse cursor hotspots from 1,1 to 0,0 - Fix inaccuracy in mouse controlled game menu - Change render_Block(), drawBox(), drawDisplayRect() to use upper Y instead of lower Y. Original AGI uses lower Y, but upper Y makes upscaling way easier.
2016-02-14AGI: Fix another comment about dynamic priority tableMartin Kiewitz
Available also in 2.425, then removed until 2.936, yada yada. priorityToY-Glitch is definitely present in 2.425 as well.
2016-02-13AGI: Fix new createDefaultPriorityTable() codeMartin Kiewitz
2016-02-13AGI: Fix priority band handlingMartin Kiewitz
- Fix saving/loading priority bands table. Now saving the actual raw data - Now also saving the flag, that defines if the priority table got modified by scripts - For older saved games it will try to figure out the state of that flag - Blocking set.pri.base for AGI below 2.936 - set.pri.base was actually introduced in 2.936 and not AGI3 - The set.pri.base bug was present in 2.936 as well - Saved games created between the graphics rewrite and this commit may have priority issues for games, that used AGI2.936+
2016-02-10AGI: Remove unused methodMartin Kiewitz
2016-02-10AGI: CleanupMartin Kiewitz
2016-02-09AGI: Use special Apple IIgs SQ1 palette for SQ1Martin Kiewitz
Was already documented inside palette.h, but wasn't used yet
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: 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-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 Amiga system UI buttonsMartin Kiewitz
Also adjust window frames for Amiga. Amiga also uses hi-res ones.
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-02AGI: add drawCharacterOnDisplay()Martin 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-01-31AGI: remove timer hack, implement in game timerMartin Kiewitz
in game timer is now updated, when scripts read in game timer VM variables and during main loop. ScummVM total play time feature is used for it. Game cycle syncing is done at the same time.
2016-01-29AGI: use Common::RenderMode instead of its ownMartin Kiewitz
AppleIIgs + Atari ST weren't available back then in the enum. They now are, so I can use the Common one.
2016-01-29AGI: adjust mouse pos using render start YMartin Kiewitz
instead of having it hardcoded.
2016-01-29AGI: graphics rewrite + cleanupMartin Kiewitz
- graphics code fully rewritten - Apple IIgs font support - Amiga Topaz support - Word parser rewritten - menu code rewritten - removed forced 2 second delay on all room changes replaced with heuristic to detect situations, where it's required - lots of naming cleanup - new console commands show_map, screenobj, vmvars and vmflags - all sorts of hacks/workarounds removed - added SCI wait mouse cursor - added Apple IIgs mouse cursor - added Atari ST mouse cursor - added Amiga/Apple IIgs transition - added Atari ST transition - user can select another render mode and use Apple IIgs palette + transition for PC versions - inventory screen rewritten - SetSimple command now properly implemented - PreAGI Mickey: Sierra logo now shown - saved games: now saving controller key mapping also saving automatic save data (SetSimple command) - fixed invalid memory access when saving games (31 bytes were saved using Common::String c_ptr() Special Thanks to: - fuzzie for helping out with the Apple IIgs font + valgrind - eriktorbjorn for helping out with valgrind - LordHoto for figuring out the code, that caused invalid memory access in the original code, when saving a game - sev for help out with reversing the Amiga transition currently missing: - mouse support for menu - mouse support for system dialogs - predictive dialog support
2016-01-21AGI: Give a nicer error message on invalid render mode.Johannes Schickel
2015-07-19AGI: Disable unused palettes for compilationMax Horn
2015-05-19AGI: implement original sierra font, fix bug #6405Martin Kiewitz
custom font is still used for fanmade games i cannot test preAGI games, because I don't own those.
2014-12-07AGI: Disable/remove unused codeFilippos Karapetis
This is code that isn't used currently. Thanks to fingolfin for pointing out these parts of the code
2014-12-07AGI: Set the correct palette to use for each Amiga gameFilippos Karapetis
The Amiga palettes were added in 16529e58e6, but were never used. A new game-specific option has been added for the old Amiga palette
2014-02-18AGI: Make GPL headers consistent in themselves.Johannes Schickel
2011-11-02AGI: Fix warningsEugene Sandulenko
2011-09-26AGI: doUpdate() already calls updateScreen()Filippos Karapetis
2011-05-25ALL: behaviour -> behaviorMatthew Hoops
2011-05-12GIT: Clean up: Suppress SVN tags, now uselessstrangerke
2011-04-28JANITORIAL: Reduce header dependencies in shared codeOri Avtalion
Some backends may break as I only compiled SDL
2011-04-14ALL: colour -> colorMax Horn
2011-02-20AGI: Remove leftover RGBA reference in comments.Johannes Schickel
2011-02-14AGI: Adapt to setPalette RGBA->RGB change.Johannes Schickel
2011-02-07COMMON: OSystem now has a PaletteManagerMax Horn
svn-id: r55806
2010-01-05Fixed bug #2924968, "AGI: Can't click "cancel" in Save/Restore Game Menu". ThisTorbjörn Andersson
regression was probably introduced with r45260, "AGI: cleanup GfxMgr::testButton". svn-id: r47030
2009-10-20AGI: cleanup GfxMgr::testButtonMax Horn
svn-id: r45260
2009-10-20AGI: Turn g_tickTimer & g_mouse into members of class AgiEngine resp. AgiBaseMax Horn
svn-id: r45259
2009-07-14Remove ioFailed() usage from AGI engine.Kari Salminen
svn-id: r42495
2009-06-06CleanupEugene Sandulenko
svn-id: r41254