Difference between revisions of "AGS/Upstream"

Jump to navigation Jump to search
4,489 bytes added ,  16:05, 29 April 2023
Update upstream commit we are currently sync'ed with
(update upstream commit we are currently sync'ed with)
(Update upstream commit we are currently sync'ed with)
 
(18 intermediate revisions by the same user not shown)
Line 7: Line 7:
This page contains the details of commits from the upstream AGS that either haven't been done yet due to various issues, or are being explicitly skipped due to changes that have been done in the ScummVM implementation.
This page contains the details of commits from the upstream AGS that either haven't been done yet due to various issues, or are being explicitly skipped due to changes that have been done in the ScummVM implementation.


ScummVM currently matches upstream commit <code> b73553d6b4655feec2f82ee1feaa67a6bc9fca23 - Engine: store certain overlay handles, not script ptrs, for safety</code> from June 7, 2022
ScummVM currently matches upstream commit <code> 820ee6c41427e3529a22ef46ac2799297a050876 - Updated build version (3.6.0.47), marking "final" 3.6.0</code> from April 1, 2023


== Still pending ==
== Still pending ==
Line 24: Line 24:
Couldn't get the initializer list to work with our custom std::array implementation
Couldn't get the initializer list to work with our custom std::array implementation
* 28a5c72321a925d1d81b27eb62a27226994c4aa8 - Engine: recreated FLIC playback as a FlicPlayer class
* 28a5c72321a925d1d81b27eb62a27226994c4aa8 - Engine: recreated FLIC playback as a FlicPlayer class
* 267874c54cde170d9cba9d7dc2c50e44cd0b906c - Engine: make SetChannel() take std unique_ptr, as it passes ownership
Because 1c535719d04473821c525c1956eeb1c8f1ef8c28 is spending as well (see above) and the two commits are linked.
* 90105f4af0f52018cd7dc3012bb3ab13c54cc7d1 - Engine: fixed AudioChans::SetChannel's return value
This fixes a bug introduced in 267874c, which is also pending
* 068c507cd70dd2b5de1e4a3d8b61c930466ce1b4 - Engine: rewrote handling of mod key combinations, for SDL backend
We do not use SDL events directly in the ScummVM AGS engine. However we need to check if we need to make a similar change.
* All the commits related to the "touch-to-mouse emulation" (https://github.com/adventuregamestudio/ags/pull/1773)
Is this relevant for ScummVM?
* fbb87c3370501d9acad9c7282c5e951032587c9e - Engine: fixed TOUCH hints breaking compilation against older SDL2
* Some Direct3D and OpenGL related commits, not used in ScummVM, but part of it may need to be reimplemented/adapted:
** 484f416cc35cd76231854edfa4756272b888a91a - Direct3D, OpenGL: replace viewport hacks with proper transform matrix
** 490522fdd412dcdb3c687f88143a62eb935de11a - Direct3D: support sprite batches rendering to a texture
** f1bc41994188eb4330c031a611bc72398ff1d405 - OGL: support sprite batches rendering to a texture
** 2a7895cde22b32bbc7ea60bc23e64152c80d6f80 - Engine: render GUI & controls batch to a buffer texture
** c91d3e70ceb9fdd0874dde80d806d8b927302bdd - Direct3D: implement proper blend op settings for a custom render target
** 3f086f1ef91d37b1d90208b798adf9a9b884a06e - OpenGL: implement proper blend op settings for a custom render target
** 5d72fe112cf08d82454e1bf55538ba8eb798461d - Engine: release render targets before switching the gfx mode
** bb039ddc807fc9df00baa184bde35b62b3f19bf4 - OpenGL: fixed custom render targets in "screen resolution" mode
** 4b900d73b5f544017c1935ddf542af7277ca752d - OpenGL: work with render targets of various sizes
** 14eb84c28a75e9756519c17aeaacce8b16343c9d - Direct3D: work with render targets of various sizes
** 6fec4943006960ae0a862e9e2af250ae4f9af8c5 - Direct3D: fixed rendering at screen resolution (when not stretched)
** d2f61af07f9751174a4859769570467669c2b1d2 - Engine: update render target if the GUI got resized
* 6fd7200ec85ace0abc5020faf79608f3385064e1 - Engine: use unique_ptr in VideoMemoryGraphicsDriver::ScreenFx
Couldn't get it to work with scummvm's implementation


== Currently skipped ==
== Currently skipped ==
Line 63: Line 87:
** 216fec99630394cf61de0305bf9f40be82ae63a5 - Engine: let configure sound cache
** 216fec99630394cf61de0305bf9f40be82ae63a5 - Engine: let configure sound cache
ScummVM has its own audio code
ScummVM has its own audio code
* 623db88c135304bc3c462edffb742633ec50d608 - Allegro4: restored proper PACKFILE write behavior
In ScummVM we have custom code for PACKFILE access (and writing is not implemented).
* e1777f8c3bb92a668a10833ce6351d8c2fad58ad - Engine: decode more after sound rewind if last read chunk was 0 bytes
ScummVM has its own audio code.
* 92b7252ef1145d88c3fa2f45983372444ab03250 - Engine: in SDLDecoder::Open() fix potential assignment of duration -1
ScummVM has its own audio code.
* 18492820b7f6763e03c0daa064accf52ab8b6a1e - APEG: provided a break in case the OggS start was not found in file
ScummVM doesn't use apeg.
* 3990ab6d533bb101fad5cfc267b6faa88c1f189c - Engine: fixed listing saves for games with custom sav extension
ScummVM has custom savefile handling and is unaffected.
* f3970d07138cd71172070aeca7ad6c326e389d17 - Engine: fix agsblend plugin stub missing DrawSprite
Not needed in ScummVM
* 084f3f281359560a94ed819ff649edbf8bf9c4a0 - Engine: in OpenAlSource::GetPositionMs return prediction if no buffers
ScummVM has its own sound code.
* 6fc888e04c4130fb4f58bc2608438c4057cb0701 - Engine: fix gfx sw driver presented offset twice
Blitting code is different, should be fixed already
* 41eb660d599e94af31bfeb086392fce5cf1e1116 - Common: add bmp and pcx load and save from stream
And related commits
** c8d12571aba7f38231d9e96ccd6a34cd1bfa09ba - Allegro4: removed bmp and pcx load/save code
** bee3ecb7ef308312fd3149b62bb618e06e8d8310 - Allegro4: removed normal packfile implementation + unused datafile
** 680dc99d730285c3474bcf71494f1fdff694e8a3 - fix Makefile-defs.allegro
** 869bfd248929fc76dca506d73f05bcd5e063fd86 - Common: in bitmap loader replaced WRITE3BYTES with a Memory function
** 6aeb7d77ec15a61d208a012e4c855b4506155951 - Common: fixed Bitmap's SaveToFile not testing an opened stream
* 1b71780d6e94eca33ee3234fd138213874640ab1 - Engine: create raw draw screens only on plugin's demand
Different implementation
* 6dbff91f02f3ee53f1c21b797bf48f68f312b78c - Engine: csci gui messages uses intptr_t insted of long
Better solution already implemented
TrustedUser
2,147

edits

Navigation menu