WIP: ScummVM-Lite Atari

All about ST/STE games

Moderators: simonsunnyboy, Mug UK, Doctor Bob Gordon, ICS, Moderator Team

Post Reply
agranlund
Atari maniac
Atari maniac
Posts: 80
Joined: Sun Aug 04, 2019 1:49 pm

WIP: ScummVM-Lite Atari

Post by agranlund »

I'm working on a very stripped down and specialised/bastardised version of ScummVM for Atari.
The main goal is to eventually be able to run Monkey Island 2 on an 8Mhz ST, but Indy4 and Day of the Tentacle are tagging along for the ride. These are the only three games supported.
There are already fully featured ports of ScummVM for (fast) Ataris and this is not trying to reinvent that wheel.

As I am just about to start ripping apart and rewriting the internal scummvm drawing routines in a more Atari friendly way I thought I'd at least post this preview alpha build before starting that rather large task:

http://www.happydaze.se/scummvm-lite-atari/

Keep in mind this is a very early build, and still far from playable on stock ST, but it should run fine on stock TT or similar (My TF534 accelerated 520ST runs Day of the Tentacle pretty much flawless - 68030@50Mhz, 4MB TT-RAM)

It would be interesting to hear if and how it runs on a stock Falcon. Especially MI2 or Indy4 - I'm pretty certain the DoTT intro is not going to be pleasant on stock Falcon.

I am targeting 4MB RAM but this build might work with 2MB.
(It greatly benefits from it being TT-RAM if you have it)

You need a HDD of some sort of course since the game files are big.

Video mode is 16 color ST-Low resolution.
It plays music through YM chip or Midi (MT32 or GM) - MT32 sounds best.
It plays speech/sfx using the YM chip or DMA - DMA sounds best and is faster.
There are experimental options for the B.A.T. cartridge or LPT DACs such as Covox Speech Thing but as I'm still waiting on delivery these have not yet been tested on real hardware - try on your own risk!)

I have only tested it with EmuTOS and Atari TOS. Don't know if it works with MiNT, MagiC etc..

It may (most likely will) have crashes.

I'm mostly at the Exxos forum and the WIP thread is there:
https://www.exxoshost.co.uk/forum/viewt ... =61&t=2644

Cheers and have fun!
--Anders
User avatar
shoggoth
Nature
Nature
Posts: 1315
Joined: Tue Aug 01, 2006 9:21 am
Location: Halmstad, Sweden
Contact:

Re: WIP: ScummVM-Lite Atari

Post by shoggoth »

Amazing, just tried it on a stock Falcon setup (Hatari I'm afraid), and performance is on par or better with native MI1. Nice achievement!

As long as you don't do anything dirty it should work well on FreeMiNT too. And if you do, it can usually be fixed.
Ain't no space like PeP-space.
User avatar
shoggoth
Nature
Nature
Posts: 1315
Joined: Tue Aug 01, 2006 9:21 am
Location: Halmstad, Sweden
Contact:

Re: WIP: ScummVM-Lite Atari

Post by shoggoth »

btw what's your input/data source for the YM music?
Ain't no space like PeP-space.
MM41
Captain Atari
Captain Atari
Posts: 154
Joined: Sun Jun 28, 2015 2:36 pm
Location: France

Re: WIP: ScummVM-Lite Atari

Post by MM41 »

Great work Agranlund :D , i don't have a fast ST but i know a little TT who will be happy to try a new game :wink:
agranlund
Atari maniac
Atari maniac
Posts: 80
Joined: Sun Aug 04, 2019 1:49 pm

Re: WIP: ScummVM-Lite Atari

Post by agranlund »

shoggoth wrote:btw what's your input/data source for the YM music?
The original midi music. It tries to be semi-clever at prioritising and fitting the input notes to the three YM channels as it plays.
As far as Scumm is concerned it's just a native midi backend.

A lot could probably be done to make it sound better (it treats all instruments exactly the same at the moment)

Edit: now that I think about it, this is probably one of the few things that could be easily integrated into the official ScummVM branch, it's generic enough and would probably work with any ScummVM game that plays midi.
User avatar
Sturm
Captain Atari
Captain Atari
Posts: 224
Joined: Wed Aug 24, 2016 1:51 pm
Location: France

Re: WIP: ScummVM-Lite Atari

Post by Sturm »

Great !
I will test this after dinner, and post several results :

-Stock Falcon 030
-CT 60 Falcon
-Midi and MT 32, since i never managed to use these with regular Scummvm builds.
-Tos/Mint
I really think official Mint ports are not really optimized, since they are really slow on a CT60.
Someone sent me a special recompiled version that works really great, but unfortunately it's based on version 1.3 I think, and thus does not support as many games as the latest version does.
MM41
Captain Atari
Captain Atari
Posts: 154
Joined: Sun Jun 28, 2015 2:36 pm
Location: France

Re: WIP: ScummVM-Lite Atari

Post by MM41 »

Just for fun, i used the demo version of the games (not supported by Agranlund)
On my STe (4mb + hard drive + MT32) and they launch more or less long before intro freezing or crashing.
There is plenty of time to see what gives the 16 colors visual adaptation and the soundscape. :cheers:
User avatar
Sturm
Captain Atari
Captain Atari
Posts: 224
Joined: Wed Aug 24, 2016 1:51 pm
Location: France

Re: WIP: ScummVM-Lite Atari

Post by Sturm »

OK, here are the results of my tests :

-DOTT Falcon 030 14MB Ram, Tos
Runs fine from VGA res (no need to switch to ST res first). Intro is a bit slow but perfectly playable. And....MT32 works !!! Wow ! Never managed to get it to run on regular Scummvm builds ! MT32 volume is a bit low.
No ingame speech tho, got speech in the intro, chose dma option.

-Indy Falcon 030, Tos
Runs fine from VGA res. Intro is ok, faster than DOTT. MT32 Works too ! No speech ingame (not sure if there was originally)

-MI2 Falcon 030 Tos. Intro runs very well, MT32 works ! No speech ingame, same as above.

-DOTT Falcon 060, 512 MB Ram Tos
Runs perfectly, got speech this time.

-Indy Falcon 060, Tos
Runs perfectly, no speech.

-MI2 Falcon 060
Runs perfectly, no speech.

DOTT Falcon 060, Mint
Runs perfectly. Can't skip intro using escape key. No ingame speech (weird since it worked with 060 Tos). Can't use F5 key ingame to load/save.

Indy Falcon 060, Mint
Runs perfectly, can't skip intro, can't use ingame keys, no speech.

MI2 Falcon 060, Mint
Keys not working, so I did not manage to pass copy protection test.

This is a great achievement, and a tremendous work, thank you ! I think you could make that run on a stock st with additional ram, problematic parts would be the intro, but should run ok ingame. Is the Falcon really faster than the ST when you don't use the DSP ? :p

And you proved me that MT32 is not supported in official Scummvm port, despite they say it is, maybe you could tell what may cause this or have a quick look when you have time :-)

Thanks again for the hard work, i'll try to test this on my unaccelerated 4MB STE if you want. I can finally listen to those wonderful MT32 musics on my Atari !
Last edited by Sturm on Fri May 01, 2020 11:00 pm, edited 3 times in total.
User avatar
Sturm
Captain Atari
Captain Atari
Posts: 224
Joined: Wed Aug 24, 2016 1:51 pm
Location: France

Re: WIP: ScummVM-Lite Atari

Post by Sturm »

Edit : tried DOTT a second time in 030 mode, YM music, dma, and got speech this time. This seems to be random in this game.
User avatar
dma
Atari God
Atari God
Posts: 1208
Joined: Wed Nov 20, 2002 11:22 pm
Location: France
Contact:

Re: WIP: ScummVM-Lite Atari

Post by dma »

Pretty amazing idea you got here, i'm eager to see it running on a ST(e). :)
User avatar
AdamK
Captain Atari
Captain Atari
Posts: 432
Joined: Wed Aug 21, 2013 8:44 am

Re: WIP: ScummVM-Lite Atari

Post by AdamK »

THIS IS AWESOME :)

STE (4MB RAM) results:
Monkey: works up to the Scabb panorama with a fire (then it seems to freeze), some graphic glitches in the intro
Atlantis: after I select sound outputs, only white screen :(
DOTT: I could get ingame :)

I've also tried it with MV16 cartridge, and I got sound :) (but a bit noisy, compared to STE DAC)

All works under hatari (and I could get to gameplay), so it is not that my game data is somehow corrupted

I belive you really know what you're doing, but I'd suggest preprocessing game data (and saving it to disk, so it would be done only once) into ST friendly format, so You do not have to do that ingame. I'd also suggest using diffrent dithering algorithm for each game, as they are very diffrent in style, and current seems to work quite well for Monkey Island 2, but not that great for DOTT,

Listening to Your YM MT-32 emulation now I understand how some companies created music for their ST releases :(
Atari: FireBee, Falcon030 + CT60e + SuperVidel + SvEthlana, TT, 520ST + 4MB ST RAM + 8MB TT RAM + CosmosEx + SC1435, 1040STFM + UltraSatan + SM124, 1040STE 4MB ST RAM + 8MB TT RAM + CosmosEx + NetUSBee + SM144 + SC1224, 65XE + U1MB + VBXE + SIDE2, Jaguar, Lynx II, 2 x Portfolio (HPC-006)

Adam Klobukowski [adamklobukowski@gmail.com]
User avatar
shoggoth
Nature
Nature
Posts: 1315
Joined: Tue Aug 01, 2006 9:21 am
Location: Halmstad, Sweden
Contact:

Re: WIP: ScummVM-Lite Atari

Post by shoggoth »

I wrote an entire PC (286 + MCGA + Tandy sound) emulator just to play Monkey Island 1 in 256 colours on my Falcon.

@agranlund: Tandy/PCjr sound can easily be emulated using the YM, and it sounds more or less just like the original. If MI2 contains Tandy music, I think I have some very rudimentary YM-wrapper code for it. Note that I'm not bashing your MIDI->YM achievement, it's a rather neat feature that could potentially be the best option if you pursue that and develop it further. The Tandy road would be more of a shortcut.

Hats off for this thing. Looking forward to seeing more of it.
Ain't no space like PeP-space.
EvilFranky
Atari Super Hero
Atari Super Hero
Posts: 926
Joined: Thu Sep 11, 2003 10:49 pm
Location: UK

Re: WIP: ScummVM-Lite Atari

Post by EvilFranky »

shoggoth wrote:I wrote an entire PC (286 + MCGA + Tandy sound) emulator just to play Monkey Island 1 in 256 colours on my Falcon.
What?!

Was this released?? Wish I'd known about this!
User avatar
shoggoth
Nature
Nature
Posts: 1315
Joined: Tue Aug 01, 2006 9:21 am
Location: Halmstad, Sweden
Contact:

Re: WIP: ScummVM-Lite Atari (off topic)

Post by shoggoth »

EvilFranky wrote:
shoggoth wrote:I wrote an entire PC (286 + MCGA + Tandy sound) emulator just to play Monkey Island 1 in 256 colours on my Falcon.
What?!

Was this released?? Wish I'd known about this!
Never released it. A few people have it. It's not very compatible, but it does MI1 very well in 256 colours on a 060 (probably also 040). It's not much fun on a stock machine. (It's about XT speed on a TT). I'd like to write a more efficient CPU core one day (or a hundred days, it's messy work).
Ain't no space like PeP-space.
agranlund
Atari maniac
Atari maniac
Posts: 80
Joined: Sun Aug 04, 2019 1:49 pm

Re: WIP: ScummVM-Lite Atari

Post by agranlund »

Thank you all for the great feedback! It sounds like there are quite a few issues and I'm noting them down so that they can be dealt with :)

Super happy to hear it works as well as it does on the stock Falcon. There is a lot that can be done to improve performace and I'm feeling cautiosly optimistic I will be able to get MI2 running fine on an 8Mhz machine.

Also amazing to hear someone tried the MV16 and that it actually worked :)
AdamK wrote: I belive you really know what you're doing, but I'd suggest preprocessing game data (and saving it to disk, so it would be done only once) into ST friendly format, so You do not have to do that ingame. I'd also suggest using diffrent dithering algorithm for each game, as they are very diffrent in style, and current seems to work quite well for Monkey Island 2, but not that great for DOTT
These are both very good suggestions and it may come down to preprocessing the data at first launch. Eventually, first iterations is going to do it runtime and use a caching system for the Atari friendly graphics. But once things are working and are fast then this is a good approach to take.

likewise for colors, it could do with some specialisation per game. Great suggestions :)


Again, I really appreciate the feedback and getting to know what works or not - I only have my 520ST to test on :)
ThorstenOtto
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2587
Joined: Sun Aug 03, 2014 5:54 pm

Re: WIP: ScummVM-Lite Atari

Post by ThorstenOtto »

You can always use Hatari to do some quick tests. For plain 68k, cycle counting should be almost perfect. For 68030+, it might be not 100% accurate, but at least should give you a hint whether the game is playable or not.
User avatar
Sturm
Captain Atari
Captain Atari
Posts: 224
Joined: Wed Aug 24, 2016 1:51 pm
Location: France

Re: WIP: ScummVM-Lite Atari

Post by Sturm »

Don't bother with Mint problems i'd say, it requires quite a powerful machine (my version only works on 060) and they're not the primary target of your program.
It works really well on Tos, unlike Scummvm.
You should really share your work with Scummvm developpers and explain how you managed to get midi to work, and optimize everything since Scummvm is pretty heavy, even for 060 machines, if you don't want or don't have time to do that yourself :-)
User avatar
shoggoth
Nature
Nature
Posts: 1315
Joined: Tue Aug 01, 2006 9:21 am
Location: Halmstad, Sweden
Contact:

Re: WIP: ScummVM-Lite Atari

Post by shoggoth »

Sturm wrote:Don't bother with Mint problems i'd say, it requires quite a powerful machine (my version only works on 060) and they're not the primary target of your program.
It works really well on Tos, unlike Scummvm.
You should really share your work with Scummvm developpers and explain how you managed to get midi to work, and optimize everything since Scummvm is pretty heavy, even for 060 machines, if you don't want or don't have time to do that yourself :-)
I'd have to disagree completely. Usually, it's not a big deal to make things work on MiNT, even with memory protection. Most problems are an indication that you've solved things the wrong way, and given the size of our platform it makes sense to take care of such things.

@agranlund: If you need/want input on FreeMiNT compatibility vs this type of (fullscreen/game) application, feel free to PM or post here, I'll be happy to help out (and so will others).
Ain't no space like PeP-space.
User avatar
Eero Tamminen
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 3364
Joined: Sun Jul 31, 2011 1:11 pm

Re: WIP: ScummVM-Lite Atari

Post by Eero Tamminen »

MiNT issue

I think it's more about working nicely with other multitasked applications, than under MiNT. AFAIK there's no good low level support for applications that install their own IKBD handlers and want to write directly to the display for performance reasons, so that it would work nicely with other (similar) apps running in parallel, and when switching between them.

Games

If I rename the Atlantis & DOTT demos to use file names that ScummVM programs try to load, they seem to work fine:

playfate -> atlantis:

Code: Select all

$ for i in playfate.*; do mv $i atlantis${i#playfate}; done
dottdemo -> tentacle:

Code: Select all

for i in dottdemo.*; do mv $i tentacle${i#dottdemo}; done
=> Maybe if the full version file name isn't found from current folder, you could check for the demo file names?

After similar renaming, Monkey Island 2 DOS demo [1] fails in the same place it fails with the your version, as it seems to fail with full (Linux) ScummVM, so it's not a problem in your version. I'm pretty sure it worked with some earlier ScummVM version, but it not working (anymore?) is actually documented on ScummVM site: https://www.scummvm.org/demos/#lec

After things have proceeded further, maybe some other lightweight ScummVM games could be supported? For example Monkey Island 1 (+ its demo), Sam & Max games and some Putt-Putt games (little kids like them a lot).

---
[1] I had bough full Monkey Island 1 & 2 games many years ago, but have newer tried v2 it as it was Windows special edition. I've now installed it with wine, but unfortunately its *.pak files [2] contain classic game files only for Monkey Island 1 (which I already had), v2 .pak file contains only *.dxt (texture?) files. :-/

[2] https://github.com/timfel/monkey/blob/m ... tractpak.c
nemodhs
Atari freak
Atari freak
Posts: 50
Joined: Sat Aug 31, 2013 2:29 pm

Re: WIP: ScummVM-Lite Atari

Post by nemodhs »

This is a great project!

I tested the 200501 version on my stock Falcon with 14MB running MagiC using the YM + DMA option.

General
- Playing these games with 16 colors and YM sound has an oddly satisfying alternate reality vibe, where LucasArts didn't stop supporting the Atari platform. :D
- The games crash with 2 bombs when I start them as is under MagiC. But they work fine, when I run them in MagiC's Single Mode.

Indy 4 CD
- Works great and rather smooth complete with voice over and SFX!
- The scrolling is a bit jerky but otherwise very responsive and fully playable
- Only real performance drag so far was the scene with the statue at the beginning, which takes ages to play out

DOTT CD
- Works great with voice over and SFX as well
- Cutscenes are extremely slow as you predicted
- The game itself is fully playable though! :)

Monkey Island 2
- Some gfx errors in the intro but works great otherwise and is fully playable as well

I only really checked the intros and first few rooms. But all in all very impressive so far!
Any chance to add VGA support on TT and Falcon? ;)
User avatar
Sturm
Captain Atari
Captain Atari
Posts: 224
Joined: Wed Aug 24, 2016 1:51 pm
Location: France

Re: WIP: ScummVM-Lite Atari

Post by Sturm »

nemodhs wrote:
Any chance to add VGA support on TT and Falcon? ;)
:lol: Poor Agranlund, your idea and program is so popular, it seems you will have a lot of work :D

I have to say, it's really impressive to be able to run those games and their intros on unaccelerated Falcons, as you really need a powerful machine to run them with Scummvm.

Of course, i'd really like to have Vga support too, because it's either Scummvm with 256 colors but no midi/MT32, or your version with midi/MT32 but with 16 colors :D

Btw, how do you convert those VGA games to 16 colors ?
User avatar
Sturm
Captain Atari
Captain Atari
Posts: 224
Joined: Wed Aug 24, 2016 1:51 pm
Location: France

Re: WIP: ScummVM-Lite Atari

Post by Sturm »

Edit 2 : Speech in Fate of Atlantis now works :
I checked the sound files, my version had "monster.sof". The right file was not easy to find, it seems every game version online has that "sof" version. I then remembered i had it in my Steam library : Bingo, it had "monster.sou"! I put that one in my game folder along with your .prg and voilà !

I have now a talkie and MT-32 version of Indy and the Fate Of Atlantis :D
User avatar
christos
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2536
Joined: Tue Apr 13, 2004 8:24 pm
Location: Greece

Re: WIP: ScummVM-Lite Atari

Post by christos »

Indiana Jones 4 and the Fate of Atlantis brings back so many memories. Most of them going over to play them on my friend''s 286. I am still annoyed to this day that there wasn't an ST version...
User avatar
Sturm
Captain Atari
Captain Atari
Posts: 224
Joined: Wed Aug 24, 2016 1:51 pm
Location: France

Re: WIP: ScummVM-Lite Atari

Post by Sturm »

After all these years, the wait is over :-)

I was about to make a video but saw this on Exxos' forum :

https://www.youtube.com/watch?time_cont ... =emb_title
agranlund
Atari maniac
Atari maniac
Posts: 80
Joined: Sun Aug 04, 2019 1:49 pm

Re: WIP: ScummVM-Lite Atari

Post by agranlund »

Sturm wrote:Edit 2 : Speech in Fate of Atlantis now works :
I checked the sound files, my version had "monster.sof". The right file was not easy to find, it seems every game version online has that "sof" version. I then remembered i had it in my Steam library : Bingo, it had "monster.sou"! I put that one in my game folder along with your .prg and voilà !

I have now a talkie and MT-32 version of Indy and the Fate Of Atlantis :D
Brilliant! :D
I bought Atlantis from GOG to get the full talkie version :)
Doesn't look like they have the original CD version of DOTT though.. so I'm using the floppy version for testing which at least have some speech in the beginning.

Should really take a look at finding or making a tool for converting the .sof back to .sou at some point.
Post Reply

Return to “Games - General”