Opened 13 years ago

Closed 13 years ago

Last modified 8 months ago

#8540 closed patch

Patch to add support for the Atari ST/FreeMiNT Platform

Reported by: SF/keithscr Owned by: fingolfin
Priority: normal Component: Port: Atari Freemint
Keywords: Cc:
Game:

Description

Diff file for adding support for the Atari ST/FreeMiNT
Platform. 5 files modified, 1 new file added.

configure modified to detect the Atari FreeMiNT OS, set
a define for MINT, and set a define for
SYSTEM_NOT_SUPPORTING_D_TYPE.

common/hashmap.h modified because, for compatibility
reasons, I am using GCC 2.95.3 (3.3.6 is available though).

sound/mididrv.cpp & sound/mididrv.h modified to add an
instance for a midi driver for the platform.

backends/module.mk modified to include the midi driver
for the Atari ST

New File - backends/midi/stmidi.cpp
Midi driver to utilize the Atari ST series of
computer's built in midi ports. Currently does not
work (looks like a problem with pointers, when
midiparser is called, the pointers seem wrong, still
working on it).

Ticket imported from: #1497254. Ticket imported from: patches/645.

Attachments (3)

scummvm-atari-mint.patch (5.8 KB) - added by SF/keithscr 13 years ago.
Diff file for patches.…
atari-v1.0.diff (1.4 KB) - added by SF/keithscr 13 years ago.
New diff with Configure patches and 1 patch for hashmap.h
atari-v1.1.diff (1.3 KB) - added by SF/keithscr 13 years ago.
Patch applied for 0.9.0 release, does not include patch for convbdf.c

Download all attachments as: .zip

Change History (18)

Changed 13 years ago by SF/keithscr

Attachment: scummvm-atari-mint.patch added

Diff file for patches....

comment:1 Changed 13 years ago by fingolfin

Owner: set to fingolfin
Resolution: duplicate
Status: newclosed

comment:2 Changed 13 years ago by sev-

Owner: fingolfin deleted
Resolution: duplicate
Status: closednew

comment:3 Changed 13 years ago by sev-

Err.... reopening this as earlier patch was already closed
as a duplicate :)

Changed 13 years ago by SF/keithscr

Attachment: atari-v1.0.diff added

New diff with Configure patches and 1 patch for hashmap.h

comment:4 Changed 13 years ago by SF/keithscr

New patch for the Atari. Midi stuff for the platform will
not make it into 0.9.0

Changed 13 years ago by SF/keithscr

Attachment: atari-v1.1.diff added

Patch applied for 0.9.0 release, does not include patch for convbdf.c

comment:5 Changed 13 years ago by fingolfin

So... should this patch be applied to the trunk, or what?

comment:6 Changed 13 years ago by fingolfin

Status: newpending

comment:7 Changed 13 years ago by fingolfin

Pending response from the bug submitter.

This tracker item contains a patch for a midi driver, which you yourself declare
as not working. It also contains a mod to configure which disables various
functionality "for performance reasons" -- why not just use --disable-vorbis
etc. then, and let users decide whichever speed they can afford?

comment:8 Changed 13 years ago by SF/keithscr

Status: pendingnew

comment:9 Changed 13 years ago by SF/keithscr

MP3 and OGG/Vorbis (also MPEG2 and FLAC) usage basically
slows the computer down to just about 1 frame/second or
less. With the current implementations of Vorbis, CPU usage
is about 60-70% when playing a sound file.

The latest patch removed all midi references. Our native
midi does not work because of what appears to be a possible
callback timer issue with our SDL port. The porter is
working on this now. When/if it works, I'll just resubmit
the midi patches.

Otherwise, the patch attached here should be good.

comment:10 Changed 13 years ago by fingolfin

"The computer" ? I thought FreeMiNT runs on many different kind of
computers, even PowerPC ones? Is there a webpage out there that tells me
what kind of systems FreeMiNT runs on, precisely?

The only other change in the attached patch is a tiny tweak to HashMap,
which I can apply.

And then there is of course the non-working MIDI driver, which I hence won't
add...

comment:11 Changed 13 years ago by SF/keithscr

Hello,

FreeMiNT only runs on Atari STs (ST/STe/TT/Falcon and Atari
clones like Milan, Medusa, Hades, etc) with a Motorola 680x0
CPU. There are projects in the works of porting it to the
Motorola Coldfire CPU, but that is something that if it
happens will be a while.

MiNT is one of 3 alternatives for an 'OS' to run on the
computers, like the Amiga and MorphOS, OS4, etc. There
exists MiNT (now FreeMiNT) and Magic, both support
multitasking, and TOS, single tasking only and built into a
ROM on the various computers's motherboard.

ScummVM will only run on a 68060 CPU.

http://www.sparemint.org/sparemint/
http://freemint.de/en/
http://en.wikipedia.org/wiki/MiNT

And, the only patch to apply would be the last one added.
It supercedes the previous 2 patches. I was just told to
upload replacements until applied. The last patch was
applied to build 0.9.0 and the patch was also included with
the distributed binary.

comment:12 Changed 13 years ago by fingolfin

Well, if MP3 and Ogg usage slow down the computer so much -- why would
the user have MAD and libogg installed in the first place? Maybe they are fast
enough to play sound standalone?
In any case, I am very reluctant to hardcode disabling a feature like MP3 or
Vorbis support. Users might for whatever odd reason still want to try it out
(e.g. somebody is working on a new handoptimized 68k asm core for MAD
and wants to test it...). Normal users won't have the libs present at all. The
others can just use --disable-mad etc.

Hence I am rejecting that part of the patch, at least for now. Maybe you can
bring up some convincing reasons why one has to force-disable support for
these libs, in a fashion that makes it impossible to re-enable them w/o
editing configure itself...

I added the rest of the patch to HEAD, thanks!

comment:13 Changed 13 years ago by fingolfin

Owner: set to fingolfin
Status: newclosed

comment:14 Changed 8 months ago by digitall

Component: Ports

comment:15 Changed 8 months ago by digitall

Component: PortsPort: Atari Freemint
Note: See TracTickets for help on using tickets.