3 ATARI running

19 views
Skip to first unread message

Francois LE COAT

unread,
Oct 20, 2024, 9:46:09 AM10/20/24
to 'Christian Quante' via ARAnyM
Hi,

Here is a recent recorded video.

Three ATARI machines are running simultaneously : Hatari 2.5, ARAnyM 1.1.0 and AtariX 0.3, under TOS 4.04, freeMiNT+XaAES and MagiC.
All is launched with macOS 10.14.6 Mojave on my 27" iMac. The ATARI are playing Eureka 2.12 GEM software, and describe 2D and 3D curves.


In video : <https://www.youtube.com/watch?v=-wXwVaekjmg>

Hatari is quite slow (with a Falcon030+882), because it's "cycle accurate". So it can play Eureka 2.12 only for 2D curves with TOS 4.04.
ArariX is faster because it emulates a Motorola 68020, and can play Eureka 2.12 for 3D surfaces. It runs in 256 color mode with MagiC.
ARAnyM is the fastest ATARI virtual machine (with Motorola 68060). But the appl_tplay() and appl_trecord() system calls are not supported with freeMiNT+XaAES yet. So I played it live with Eureka 2.12.

I hope you'll appreciate...

ATARIstically yours =)

-- 
François LE COAT
Author of Eureka 2.12 (2D Graph Describer, 3D Modeller)
https://eureka.atari.org/

Thorsten Otto

unread,
Oct 20, 2024, 10:10:20 AM10/20/24
to ara...@googlegroups.com

On Sonntag, 20. Oktober 2024 15:45:47 CEST Francois LE COAT wrote:

> Here is a recent recorded video.


:thumbs-up: ;)


>But the appl_tplay() and appl_trecord() system calls are not supported with freeMiNT+XaAES yet.


Hm, yes. Dunno whether it is easily possible to implement them in a way that is compatible with single-tos (it relies on certain values to be written to the buffer). But beside Eureka, there are not many applications using it.


Francois LE COAT

unread,
Oct 20, 2024, 10:31:13 AM10/20/24
to ara...@googlegroups.com
Hi,

Thorsten Otto writes:

Francois LE COAT wrote:

> Here is a recent recorded video.


:thumbs-up: ;)

Thanks!

>But the appl_tplay() and appl_trecord() system calls are not supported with freeMiNT+XaAES yet.


Hm, yes. Dunno whether it is easily possible to implement them in a way that is compatible with single-tos (it relies on certain values to be written to the buffer). But beside Eureka, there are not many applications using it.

Oh yes, but MyAES from Olivier Landemarre, that is an alternative to XaAES, implements those system calls. So I know it can be done :-)

All of this is perfectible!

Best regards,

Thorsten Otto

unread,
Oct 22, 2024, 8:35:22 AM10/22/24
to ara...@googlegroups.com

On Sonntag, 20. Oktober 2024 16:31:07 CEST Francois LE COAT wrote:

> Oh yes, but MyAES[1] from Olivier Landemarre, that is an alternative to

> XaAES, implements those system calls. So I know it can be done :-)


Maybe. MagiC also implements it, but actually the way events are handled there is quite similar to SingleTOS. In XaAES, the whole event system is completely different, and there is no such thing as a fork queue (where events are recorded before being sent to applications) any longer. I took a brief look, and currently have no idea how to easily intercept recording of events.


Francois LE COAT

unread,
Nov 3, 2024, 11:15:23 AM11/3/24
to 'Christian Quante' via ARAnyM
Hi,

Thorsten Otto writes:
It looks to me as a recording of a mechanical piano. That's how we can still hear Igor Stravinsky on his piano today. It was recorded, and can still be played :-)

TOS (and EmuTOS) does it, MagiC, MyAES. This kind of GEM recording of events was always available on ATARI computers. That's why I use it.

Thorsten Otto

unread,
Nov 3, 2024, 12:16:20 PM11/3/24
to ara...@googlegroups.com

On Sonntag, 3. November 2024 17:15:17 CET Francois LE COAT wrote:

> TOS (and EmuTOS) does it, MagiC, MyAES. This kind of GEM recording of events

> was always available on ATARI computers. That's why I use it.



That is perfectly legal, and we could considered it a bug that XaAES does not implement it. But as already mentioned, it seems to be not so easy now, given the current way events are handled. But feel free to open an issue in the freemint repo.



Francois LE COAT

unread,
Nov 3, 2024, 4:00:39 PM11/3/24
to 'Christian Quante' via ARAnyM
Hi,

Thorsten Otto writes:
The bug with XaAES is an unimplemented feature. I reported it a very long time ago...

https://www.naprvyraz.sk/mint/200304/msg00059.html on freeMiNT list in 2003.

and it was submitted to freeMiNT bugtracker...

http://sparemint.org/bugtracker/login_page.php

I can't report an issue anymore, because I'm not having a GitHub account. Sorry...

Regards,

Miro Kropáček

unread,
Nov 3, 2024, 4:44:10 PM11/3/24
to ara...@googlegroups.com
On Sun, 3 Nov 2024 at 18:16, 'Thorsten Otto' via ARAnyM <ara...@googlegroups.com> wrote:

That is perfectly legal, and we could considered it a bug that XaAES does not implement it. But as already mentioned, it seems to be not so easy now, given the current way events are handled. But feel free to open an issue in the freemint repo.

This gives even further reasoning why it is not so easy to replicate on a system with separate AES and VDI components: https://mikro.naprvyraz.sk/mint/200304/msg00023.html

--

Roger Burrows

unread,
Nov 3, 2024, 6:40:14 PM11/3/24
to ara...@googlegroups.com
If you want to see how EmuTOS handles this, take a look at ap_tplay() in
gemaplib.c. Basically it disconnects the VDI from the mouse (via standard VDI
calls) and draws the mouse itself. IIRC, the AES does not use any hidden
knowledge about the VDI to do this. However, I'm not sure that EmuTOS's
approach would work in a multi-tasking environment.

Roger

Francois LE COAT

unread,
Nov 5, 2024, 11:30:27 AM11/5/24
to 'Christian Quante' via ARAnyM
Hi,

Roger Burrows writes:
> Miro Kropácek wrote:
>> Thorsten Otto' wrote:
>>> That is perfectly legal, and we could considered it a bug that XaAES does
>>> not implement it. But as already mentioned, it seems to be not so easy
>> now,
>>> given the current way events are handled. But feel free to open an issue
>> in
>>> the freemint repo.
>>>
>> This gives even further reasoning why it is not so easy to replicate on a
>> system with separate AES and VDI components:
>> https://mikro.naprvyraz.sk/mint/200304/msg00023.html
> If you want to see how EmuTOS handles this, take a look at ap_tplay() in
> gemaplib.c. Basically it disconnects the VDI from the mouse (via standard VDI
> calls) and draws the mouse itself. IIRC, the AES does not use any hidden
> knowledge about the VDI to do this. However, I'm not sure that EmuTOS's
> approach would work in a multi-tasking environment.

I confirm the appl_tplay() and appl_trecord() system calls are correctly
implemented in EmuTOS.
I verified it with the `RECORD.ACC` accessory that works together with
Eureka 2.12. And because an
accessory is running in parallel under TOS or EmuTOS, the solution to
implement it should be close in
XaAES, tough freeMiNT+XaAES is a fully multi-tasking operating system.

Best regards,

Thorsten Otto

unread,
Nov 6, 2024, 12:14:28 AM11/6/24
to ara...@googlegroups.com

On Montag, 4. November 2024 00:40:09 CET 'Roger Burrows' via ARAnyM wrote:

> However, I'm not sure that EmuTOS's

> approach would work in a multi-tasking environment.


Well multi-tasking is one thing, but this is not the main problem (it works in MagiC for example, in almost the same way as in TOS/EmuTOS)


The main problem with XaAES is, that there is not a simple queue like the FPD structure where events are stored.


BTW, i think it is documented that recording can be aborted by pressing control-backslash. However both TOS and EmuTOS do this by comparing the keycode to 0x2b1c (0x2b for being the scancode, and 0x1c the ascii code). But this only works for us-keyboard layouts, on other layouts it is impossible to produce such a key, since backslash is located elsewhere and the key at 0x2b has a different ascii code.


Francois LE COAT

unread,
Nov 6, 2024, 11:15:38 AM11/6/24
to ara...@googlegroups.com
Hi,

Thorsten Otto writes:
> BTW, i think it is documented that recording can be aborted by
> pressing control-backslash. However both TOS and EmuTOS do this by
> comparing the keycode to 0x2b1c (0x2b for being the scancode, and 0x1c
> the ascii code). But this only works for us-keyboard layouts, on other
> layouts it is impossible to produce such a key, since backslash is
> located elsewhere and the key at 0x2b has a different ascii code.

This functionality with appl_tplay() and appl_trecord() to stop the
recording and playing of GEM events, is not used.
I didn't even know about pressing "control-backslash" to stop.
What I'm doing with the `RECORD.ACC` accessory, that works together with
Eureka 2.12, is waiting the "SPACE BAR" press.
If you press it, Eureka 2.12 stops buffering GEM events after the buffer
end, otherwise it continue with a larger buffer until its end.
Because Eureka 2.12 and `RECORD.ACC` are launched in parallel, the
"SPACE BAR" pressing can be detected, during recording or playing the
event buffer.
Remember that application (Eureka 2.12) and accessories ('RECORD.ACC')
are running in parallel, even with mono-task TOS and EmuTOS.

Best regards,

Roger Burrows

unread,
Nov 6, 2024, 9:26:57 PM11/6/24
to ara...@googlegroups.com
On 6 Nov 2024 at 6:14, 'Thorsten Otto' via ARAnyM wrote:
>
> BTW, i think it is documented that recording can be aborted by pressing
> control-backslash. However both TOS and EmuTOS do this by comparing the
> keycode to 0x2b1c (0x2b for being the scancode, and 0x1c the ascii code). But
> this only works for us-keyboard layouts, on other layouts it is impossible to
> produce such a key, since backslash is located elsewhere and the key at 0x2b
> has a different ascii code.
>
If you think that's a useful thing to fix in EmuTOS, please make a post on the
EmuTOS mailing list. At a quick glance it could be a bit messy, particularly
for multi-language ROMs, but not difficult. But I suspect the real-life
usefulness might be small.

Roger

Francois LE COAT

unread,
Nov 7, 2024, 11:05:10 AM11/7/24
to ara...@googlegroups.com
Hi,

Roger Burrows writes:
It doesn't really matter. Because the functionality is not used anywhere
... Well, I'm using appl_tplay() and appl_trecord() system calls in my
Eureka 2.12 GEM software. But with a different way to stop recording and
playing GEM events.

Best regards,
Reply all
Reply to author
Forward
0 new messages