[01:05] Lightkey (~Darklock@2003:f6:93d1:c471:22cf:30ff:fe08:3718) left irc: Ping timeout: 260 seconds [01:18] Lightkey (~Darklock@2003:f6:9713:5566:22cf:30ff:fe08:3718) joined #scummvm. [01:22] somaen (somaen@scummvm/undead/somaen) left irc: Remote host closed the connection [01:36] DominusExult (~dominus@port-92-196-93-216.dynamic.as20676.net) joined #scummvm. [01:36] DominusExult (~dominus@port-92-196-93-216.dynamic.as20676.net) left irc: Changing host [01:36] DominusExult (~dominus@unaffiliated/dominus) joined #scummvm. [01:38] Dominus (~dominus@unaffiliated/dominus) left irc: Ping timeout: 260 seconds [01:38] Nick change: DominusExult -> Dominus [01:50] crns (~crns@unaffiliated/crns) left irc: Ping timeout: 260 seconds [01:54] crns (~crns@unaffiliated/crns) joined #scummvm. [02:27] [scummvm] mduggan pushed 1 new commits to master: https://git.io/Jfsfl [02:27] scummvm/master f910fbe mduggan: ULTIMA: Add PC98 Ultima 1 detection [02:32] [scummvm] mduggan pushed 1 new commits to master: https://git.io/JfsfR [03:19] travis-ci (~travis-ci@218.19.73.34.bc.googleusercontent.com) joined #scummvm. [03:19] scummvm/scummvm#13076 (master - f910fbe : Matthew Duggan): The build has errored. [03:19] Change view : https://github.com/scummvm/scummvm/compare/fccc6e4cc6a7...f910fbe1b242 [03:19] Build details : https://travis-ci.org/scummvm/scummvm/builds/682478036 [03:19] travis-ci (travis-ci@218.19.73.34.bc.googleusercontent.com) left #scummvm. [03:22] Macos build timeouts again.. [03:53] scummvm/master 8424ea0 mduggan: ULTIMA8: Add cast to supress warning [03:53] [scummvm] mduggan pushed 1 new commits to master: https://git.io/JfsJM [04:52] scummvm/master 09b7153 mduggan: ULTIMA8: Fix more coverity issues [04:52] [scummvm] dreammaster pushed 3 new commits to master: https://git.io/JfsUd [04:52] scummvm/master bfe395b dreammaster: ULTIMA4: Shift mouse button -> interact to GameController [04:52] scummvm/master c5f6fb5 dreammaster: ULTIMA4: Adding title skipping from mouse clicks [04:52] scummvm/master 54b5771 dreammaster: ULTIMA4: Allow intro menu options mouse clicks [05:02] I got the PC98 version of Ultima4.. it seems that not a single file matches the GOG version I have. Other than the name you'd barely suspect they're the same game at first glance [05:35] [scummvm] mduggan pushed 2 new commits to master: https://git.io/JfsTZ [05:35] scummvm/master f31db0c mduggan: ULTIMA8: Const correctness [05:35] scummvm/master dc210d1 mduggan: ULTIMA1: Fix oob copy on startup [05:46] Quite possibly a conversion then. Like how the SNES Ultima 6 was a rewrite [05:48] dreammaster (~dreammast@c-73-241-66-252.hsd1.ca.comcast.net) left irc: [05:48] Yeah. I'll poke around the data a bit more to see if I'm missing something. U1 and U6 are 90% the same so may just need some tweaks to load the PC98 versions [06:13] I managed to get PC-98 Ultima 6 detected, but it crashes right away. Is that to be expected still, or did I load the wrong disks? [06:13] My japanese U8 starts though [06:20] Using nigtlies or latest git? I fixed 2 crashes on it probably after the most recent nightly. [06:20] nightlies. I'll try git [06:21] There may be more.. I didn't play very far in but at least it starts now [06:21] while I'm compiling, one more question [06:21] what is ultima 1 vga enhanced? is that a patch? or was it part of a collection? [06:40] [scummvm] ScummVM-Translations pushed 1 new commits to master: https://git.io/JfskQ [06:40] scummvm/master bd9515f lotharsm: I18N: Update translation (German) [06:51] I'm not familiar with that one. By the way, my mistake I fixed U6 regular, U6 PC98 still doesn't work. It has different data files which I have to take a look into. [06:52] oh ok, thanks. I was looking through the disks making sure I didn't extract the files wrong [06:52] U1 VGA Enhanced is in detection_tables.h [06:52] from dreammaster [07:22] Lightkey (~Darklock@2003:f6:9713:5566:22cf:30ff:fe08:3718) left irc: Ping timeout: 260 seconds [07:35] Lightkey (~Darklock@2003:f6:9713:5556:22cf:30ff:fe08:3718) joined #scummvm. [07:36] kevin__ (~kevin@2a02:8084:8081:7500:101d:b29d:84e5:a3e6) joined #scummvm. [07:40] Begasus (~begasus@ptr-4qba4e9d102s6pcrqrd.18120a2.ip6.access.telenet.be) joined #scummvm. [07:41] kevin__ (~kevin@2a02:8084:8081:7500:101d:b29d:84e5:a3e6) left irc: Quit: Konversation terminated! [07:41] kevin__ (~kevin@37.228.243.34) joined #scummvm. [07:47] kevin__ (~kevin@37.228.243.34) left irc: Ping timeout: 256 seconds [08:08] BeefEats (~BeefEats@unaffiliated/beefeats) left irc: Quit: Bye [08:17] cd (~cd@unaffiliated/cd) left irc: Quit: cd [08:23] [scummvm] mduggan pushed 1 new commits to master: https://git.io/JfsLB [08:23] scummvm/master a62f8fa mduggan: ULTIMA8: Sanity check shape data on load [08:25] [scummvm] mduggan pushed 2 new commits to master: https://git.io/JfsLR [08:25] scummvm/master ef13c8c mduggan: ULTIMA8: Clean up remorse menu gump [08:25] scummvm/master eff4de3 mduggan: ULTIMA8: Slightly nicer remorse audio process [09:59] _sev (~sev@scummvm/undead/sev) left irc: Quit: This computer has gone to sleep [10:00] Well version on IBM PC of first ultima was enhanced edition in 1987, original game waa only for Apple II/C64 etc. Dunno about VGA part tho, it was EGA, however there was other ports with more colors. [10:01] Last message repeated 1 time(s). [10:03] _sev (~sev@d158167.upc-d.chello.nl) joined #scummvm. [10:03] _sev (~sev@d158167.upc-d.chello.nl) left irc: Changing host [10:03] _sev (~sev@scummvm/undead/sev) joined #scummvm. [10:03] #scummvm: mode change '+o _sev' by ChanServ!ChanServ@services. [10:50] SylvainTV (~Sylvain@lfbn-lil-1-811-58.w92-148.abo.wanadoo.fr) joined #scummvm. [10:50] #scummvm: mode change '+o SylvainTV' by ChanServ!ChanServ@services. [10:53] ajax16384 (~User@109.60.130.33) joined #scummvm. [10:53] #scummvm: mode change '+o ajax16384' by ChanServ!ChanServ@services. [10:55] Shine (~Shine@x4d06aaec.dyn.telefonica.de) joined #scummvm. [11:13] Axy (~Mia@unaffiliated/mia) joined #scummvm. [11:15] Mia (~Mia@unaffiliated/mia) left irc: Ping timeout: 258 seconds [12:09] criezy (~criezy@host86-164-6-95.range86-164.btcentralplus.com) joined #scummvm. [12:09] #scummvm: mode change '+o criezy' by ChanServ!ChanServ@services. [12:39] _Tkachov (~q@84.237.53.159) joined #scummvm. [12:40] Tkachov (~q@84.237.53.159) left irc: Ping timeout: 260 seconds [13:51] [scummvm] mduggan pushed 1 new commits to master: https://git.io/JfsGU [13:51] scummvm/master a98617a mduggan: AUDIO: Correct small errors in AMF loader [13:51] Deledrius (~Deledrius@068-118-138-186.res.spectrum.com) left irc: Quit: App.Exit [13:57] Deledrius (~Deledrius@068-118-138-186.res.spectrum.com) joined #scummvm. [14:21] _sev_ (~sev@d158167.upc-d.chello.nl) joined #scummvm. [14:21] _sev_ (~sev@d158167.upc-d.chello.nl) left irc: Changing host [14:21] _sev_ (~sev@scummvm/undead/sev) joined #scummvm. [14:21] #scummvm: mode change '+o _sev_' by ChanServ!ChanServ@services. [14:21] _sev (~sev@scummvm/undead/sev) left irc: Ping timeout: 246 seconds [14:36] DrMcCoy (~drmccoy@xoreos/drmccoy) left irc: Quit: reboot [15:35] ny00123 (~ny00123@5.102.217.144) joined #scummvm. [15:40] DrMcCoy (~drmccoy@xoreos/drmccoy) joined #scummvm. [15:40] #scummvm: mode change '+o DrMcCoy' by ChanServ!ChanServ@services. [15:41] JohnnyonFlame (~quassel@179.232.194.217) joined #scummvm. [15:53] dreammaster (~dreammast@c-73-241-66-252.hsd1.ca.comcast.net) joined #scummvm. [15:53] #scummvm: mode change '+o dreammaster' by ChanServ!ChanServ@services. [16:01] The Ultima 1 VGA is a placeholder for work I was doing to have the option to display the overworld/cities portion of Ultima 1 using Ultima VI graphics [16:03] Not everything would map 1->1, but I figured it would be something cool to muck around with, so I left hooks in place as I wrote the code [16:14] Begasus (~begasus@ptr-4qba4e9d102s6pcrqrd.18120a2.ip6.access.telenet.be) left irc: Ping timeout: 240 seconds [16:14] Got it. That sounds like a fun option. [16:14] GuiToris (~GuiToris@unaffiliated/guitoris) joined #scummvm. [16:15] hello, can I create shortcuts to the desktop? [16:16] GuiToris: yes [16:16] GuiToris: add desired game to ScummVM, look at its options, memorize the 'game id' [16:17] then in your shortcut put that as a parameter to ScummVM like scummvm.exe monkeyvga [16:18] oh you mean 'edit game' [16:19] thanks it's working!! [16:20] does scummvm actually recognize the games? Because I did nothing but selected the main directory of the games [16:20] not even the exe files [16:20] yes, it does [16:21] it inspects the files in the directory you selected and automagically detects which game it is [16:21] this is so awesome [16:21] I've thought this is just a different dosbox [16:22] thank you for helping :) [16:28] eyyy, glad I'm not the only one who uses the phrase automagically [16:29] 😄 [16:29] I don't know where I heard it first - it was probably even here or in IRC [16:30] it's a valid word: https://www.ldoceonline.com/dictionary/automagically [16:52] if a game is neither present in the supported game list nor the unsupported one then it isn't going to work, is it? [16:53] exactly. Contrary to DOSBox, ScummVM is not providing some sort of "DOS Environment" or Emulation. [16:53] got it, thank you :) [16:54] Instead, we rewrite the game code itself, basically replacing the original executables. [16:54] This means that each game needs to get implemented on it's own [16:55] it must take a lot of hard work! [16:58] Indeed it is, the engine developers are doing a wonderful job. In some rare cases, we get access to the original source code of the game, but in most cases, the only way to write the engine is by examining the original executable with reverse engineering [17:07] [scummvm] sev- closed pull request #2206: WINTERMUTE: Add new reversion Steam releases (master...patch-2) https://git.io/JftEf [17:07] [scummvm] sev- pushed 2 new commits to master: https://git.io/Jfs8S [17:07] scummvm/master d8e3c39 aviloria: COMMON: Add support for Serbian language [17:07] scummvm/master b86ab4f aviloria: WINTERMUTE: Add new reversion1 and reversion3 Steam releases [17:07] thank you for your help. I'm leaving new [17:07] see you later [17:07] GuiToris (~GuiToris@unaffiliated/guitoris) left irc: Quit: Sieben Acht Gute Nacht! [17:08] [scummvm] sev- pushed 3 new commits to master: https://git.io/Jfs8Q [17:08] scummvm/master 80d5645 sev-: DIRECTOR: Fixed action cross reference check [17:08] scummvm/master 322e014 sev-: DIRECTOR: LINGO: Fix immediate scripts execution for D2-D4 [17:08] scummvm/master f48ab6a sev-: JANITORIAL: Fix indentation [18:03] tnt (~tnt@osmocom/tnt) joined #scummvm. [18:09] travis-ci (~travis-ci@69.16.227.35.bc.googleusercontent.com) joined #scummvm. [18:09] scummvm/scummvm#13086 (master - f48ab6a : Eugene Sandulenko): The build has errored. [18:09] Change view : https://github.com/scummvm/scummvm/compare/b86ab4fe50af...f48ab6afb835 [18:09] Build details : https://travis-ci.org/scummvm/scummvm/builds/682644114 [18:09] travis-ci (travis-ci@69.16.227.35.bc.googleusercontent.com) left #scummvm. [18:19] about these timeouts in travis-ci, I see there is ccache in the environment [18:19] maybe we could use it to speed up the build and avoid the timeout? [18:23] [scummvm] sev- pushed 7 new commits to master: https://git.io/JfsRH [18:23] scummvm/master 366e9a3 sev-: DIRECTOR: LINGO: Passing channels Id for immediate scripts [18:23] scummvm/master 292c43c sev-: DIRECTOR: LINGO: Use channelId for immediate actions [18:23] scummvm/master 4a49d9d sev-: GRAPHICS: MACGUI: Fixed crash when removing all text in editable text [18:27] afaik, the sessions are not persisted [18:27] so, no gain with ccache [18:28] indeed. travis-ci spawns a VM/LXC instance and destroys it after the build job is complete. [18:32] hum... no data storage on the outside? [18:34] cd (~cd@unaffiliated/cd) joined #scummvm. [18:37] no, the containers are meant for one-time use. [18:38] they even are created completely empty, so the whole environment is re-installed to the container when it launches [18:38] Hi. So, I'm trying to port scummvm to a riscv custom SoC and trying to understand how it draws stuff on screen exactly. That SoC is very slow compared to a PC and so I'm expecting drawing things to be bottleneck and what I'd need to optimize. [18:39] I was kind of expecting transBlit(..) to be used for the drawing of elements but it doesn't seem to be called at all (at least in loom which ... I just happen to have here) [18:39] i am unsure if it even supports hardware acceleration for graphics. [18:40] get a profiler and capture some hot paths to know where cpu time is spent [18:41] I can't run it yet because that SoC doesn't have a GPU yet :p I still have to design and implement it but I wanted to taylor it to scummvm needs so that operation scummvm needs would be fast. [18:43] ATM a fast 2D blitter and customizable hardware cursor are the two features I think I'd need at the min. [18:43] tnt: scummvm is all cpu. most engines use Surface directly as a pixel buffer and implement their own blitting [18:44] since that's how it was back in the day 😛 [18:44] so most backends will probably just be updating a pixel buffer in memory and putting it on screen at regular intervals [18:50] so i'm guessing you want something that can quickly manipulate and copy pixel buffers from memory to the screen [18:57] laukev7 (~kevin@2a02:8084:8081:7500:cde1:79a3:47c6:c80b) joined #scummvm. [18:58] hi, I see that 16bit bmps aren't supported... is there a known workaround for this? [19:08] <_sev_> tnt: Do you have access to the framebuffer? [19:08] Nick change: _sev_ -> _sev [19:09] <_sev> tnt: you may see all required calls in testbed engine. That one is specifically developed for testing backends implementation for correctness [19:10] @rootfather too bad 😦 [19:10] <_sev> tnt: what we have is copyRectToScreen(), that's the thing which needs to be implemented. Also, there is overlay which is used by GUI, copyRectToOverlay() [19:10] <_sev> tnt: we used to have framebuffer-based ports, but they've gone as obsolete. Let me quickly dig one for you [19:11] @lephilousophe i might experiment with moving us to github actions, at least they give more time [19:12] personally i think that most engines can be refactored to use hardware acceleration [19:12] <_sev> tnt: this is one: [19:13] @rootfather https://docs.travis-ci.com/user/caching/#ccache-cache [19:14] maybe there is something interesting there [19:14] <_sev> tnt: another important call is updateScreen(), this is the one which should actually do the blitting, copyRectToScreen() should copy it over to some internal buffer first [19:21] travis-ci (~travis-ci@242.157.237.35.bc.googleusercontent.com) joined #scummvm. [19:21] scummvm/scummvm#13089 (master - 3fd0858 : Eugene Sandulenko): The build passed. [19:21] Change view : https://github.com/scummvm/scummvm/compare/f48ab6afb835...3fd0858e84f7 [19:21] Build details : https://travis-ci.org/scummvm/scummvm/builds/682662577 [19:21] travis-ci (travis-ci@242.157.237.35.bc.googleusercontent.com) left #scummvm. [19:22] @rootfather in fact configuration is already there but I think that macOS build just miss the same symlinks that linux clang has [19:22] that would explain why linux clang takes 10 minutes while macos one takes more than 50 minutes [19:27] _sev: thanks yeah, I was thinking of doing a double buffer basically and just swap when doing the updateScreen [19:28] <_sev> tnt: feel free to ask any clarifying questions [19:28] perhaps you'd get better results trying to hardware accelerate a more isolated system such as video playback or synth emulation [19:29] then again, not all games use those. and certainly not all the time [19:29] at least not all the time for video. [19:30] BeefEats (~BeefEats@unaffiliated/beefeats) joined #scummvm. [19:33] Henke37: yeah, I was thinking of basically a hw midi player ... [19:33] It's targetting more the older games anyway since we don't have a lot of flash space for game data anyway. [19:33] [scummvm] sev- closed pull request #1294: BUILD: Use C++14 / C++11 by default (master...c++11) https://git.io/fNhlP [19:34] that's a pitty. you should at least try and support classics such as comi [19:46] @Henke37 your recommendation to accelerate videos is useless: ScummVM has no API around it [19:47] for certain definitions of "API" [19:47] we do not play videos any different from other gfx updates [19:47] thus, our backend system will not be able to distinguish when you're playing a video [19:47] i consider that mostly implementation internals [19:48] from the viewpoint of the engine, it is largely irrelevant [19:48] but you're telling to a newcomer to extend OSystem API, how is that? [19:49] how is it what? a good idea? [19:50] terrible, barely practical [19:50] well, he may have to depending on the target hardware, since gpus are vastly better at graphics. [19:50] the cpu might not be powerful enough [19:51] scummvm is all about portability [19:52] so, if some fancy new gadget has cool better features, it is not suitable for us, until these features are really widespread [19:52] you're trying to solve some other project's problems [19:52] sure. and for the 5 % of the platforms that don't use standard graphics apis, and can't be arsed writing their own wrapers, they can use software rendering [19:53] i do not think that basic 2d compositing is a rare feature [19:53] and of course, you're opting in to write that software renderer, or just trolling as usual? [19:53] for once, there'd be no need to. it's what we already have [19:54] no, we don't 🙂 [19:54] because if you see a software decoder in, say., video/ that doesn't mean you can pass that to hardware now, you have to extend OSystem [19:54] [scummvm] dreammaster pushed 4 new commits to master: https://git.io/Jfsuj [19:54] scummvm/master 59a82b6 dreammaster: ULTIMA4: Change menu controller to use keybinding actions [19:54] scummvm/master d46b944 dreammaster: ULTIMA4: Mouse click handling for config menus [19:54] scummvm/master 72ff61e dreammaster: ULTIMA4: Move views into their own subfolder [19:55] back to point #1 [19:55] and if you use hardware acceleration on some platform, and do it cleanly with fallback to the software methods, your PR is welcome [19:56] i am not seeing what you are saying. the need for backends to be able to override a factory? [19:56] how are you going to call those hardware accelerators? right in video/? [19:57] you need to fulfil a request "play video" [19:57] now it is all hardware [19:57] where will you stick a logic branch to do hw acceleration? [19:58] we have a VideoPlayer base class. i don't even need to check to know that various games explicitly call the constructors of the subclasses. [19:58] that'd need to change to a factory function that can swap in the correct decoder implementation for the backend. [19:59] aha, backend. Our backend API is called OSystem. So, you have to add a couple of methods to it, extending it [19:59] this is what I am talking about [20:00] right. OSystem. [20:06] anyway, the biggest gain would be the main graphics api. video is a nice to have, but graphics is used in every game, even plumbers [20:31] I guess I could at least provide a riscv implementation of some method like gfxARM.s but for riscv. [21:21] ajax16384 (~User@109.60.130.33) left irc: Quit: Leaving [21:41] Shine (~Shine@x4d06aaec.dyn.telefonica.de) left irc: Read error: Connection reset by peer [21:42] criezy (~criezy@host86-164-6-95.range86-164.btcentralplus.com) left irc: Quit: criezy [21:43] [scummvm] Mataniko pushed 1 new commits to master: https://git.io/JfsaI [21:43] scummvm/master 985ccfa Mataniko: SCUMM: Fix MM NES dark rooms and flashlight [21:51] bmp [22:51] ldevulder (~ldevulder@176.167.232.120) joined #scummvm. [22:52] ldevulder_ (~ldevulder@176.167.223.250) left irc: Ping timeout: 272 seconds [22:55] ny00123 (~ny00123@5.102.217.144) left irc: Quit: Leaving [23:33] If a base class like OSystem were to gain another member function, how many changes would that require in all the derived classes? I think a lot, not an easy undertaking due to how C++ works. [23:34] I think [23:36] There's no homebrew I know of on Vita Switch PSP that actually uses hw accelerated video playback, I don't think the CFW even has functions to access that, even if the GPU supports it. [23:36] nah, it's fine. have the base class have an implementation and subclasses won't have to override it unless they need to change something [23:36] And other platforms don't need it because they are plenty fast for all things ScummVM [23:36] Even Switch is plenty fast for current software rendering. [23:36] Just VIta and PSP have some issues. [23:37] With games like Blade Runner [23:37] I know that commercial games on Vita and PSP definitely make use of some kind of hardware mpeg decoding or whatever, but I don't think any current custom firmware allows access to that?!!? Maybe I am wrong. [23:39] Yeah for Switch and 3DS, there's definitely no interface for CFW to access such acceleration. [23:40] Not 100% sure about VIta and PSP, but I suspect the same. [23:42] Only official devs using official SDK have access to such hardware functions on these platforms. [23:45] clearly the hackers have their work set out for them [23:46] I don't think anybody is interested in it. Certain PSP models have a media engine that supports hardware accelerated mp3 playback. That is already used by the PSP platform backend for mp3 support with negligible CPU load. [23:47] I think because the sound library used on Vita has mp3 acceleration built-in [23:49] Ah no, it is directly in scummvm psp/mp3.cpp [23:50] // Based on PSP firmware version, we need to do different things to do Media Engine processing [23:50] It loads a specific sysmodule for hardware mp3 decoding. [23:50] On PSP pretty nice. [23:51] I usually recommend to PSP users to use mp3 sound encoding to gain some extra performance in ScummVM [23:53] The PSP is a really nice backend. To make ScummVM fast, everything is implemented in a platform optimized way there. It is quite a lot of code. [23:53] COmpared to most other platforms that just use SDL2, and are much higher level, the PSP backend is quite low-level. [23:55] It looks like the open source VItaSDK actually supports some kind of h264 decoding: https://docs.vitasdk.org/group__SceVideoDecUser.html [00:00] --- Mon May 4 2020