Age | Commit message (Collapse) | Author |
|
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.
|
|
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.
|
|
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.
|
|
|
|
|
|
Was a regression caused by commit
e1c36a52b561463217e22687605d2f4f1dc33be6
(upscaling + hercules font support)
Thanks to salty-horse for reporting this issue
|
|
|
|
- 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.
|
|
Available also in 2.425, then removed until 2.936, yada yada.
priorityToY-Glitch is definitely present in 2.425 as well.
|
|
|
|
- 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+
|
|
|
|
|
|
Was already documented inside palette.h, but wasn't used yet
|
|
|
|
But not actually using the GR palette, because it looks horrible.
|
|
|
|
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
|
|
|
|
Do not show mouse cursor after transition, when it's currently
switched to hidden. Do the same for hide/show.mouse opcodes.
|
|
Also adjust window frames for Amiga. Amiga also uses hi-res ones.
|
|
|
|
Also work on drawCharacter code for SystemUI usage
|
|
Only slightly different than on PC
|
|
|
|
This mostly enforces tabs for indentation and spaces for formatting. But also
fixes spaces on empty lines, some extra/missing spaces.
astyle + manual fixup
|
|
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.
|
|
AppleIIgs + Atari ST weren't available back then in the enum.
They now are, so I can use the Common one.
|
|
instead of having it hardcoded.
|
|
- 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
|
|
|
|
|
|
custom font is still used for fanmade games
i cannot test preAGI games, because I don't own
those.
|
|
This is code that isn't used currently. Thanks to fingolfin for
pointing out these parts of the code
|
|
The Amiga palettes were added in 16529e58e6, but were never used.
A new game-specific option has been added for the old Amiga palette
|
|
|
|
|
|
|
|
|
|
|
|
Some backends may break as I only compiled SDL
|
|
|
|
|
|
|
|
svn-id: r55806
|
|
regression was probably introduced with r45260, "AGI: cleanup
GfxMgr::testButton".
svn-id: r47030
|
|
svn-id: r45260
|
|
svn-id: r45259
|
|
svn-id: r42495
|
|
svn-id: r41254
|