PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

All about the serious stuff.

Moderators: Mug UK, Zorro 2, Moderator Team

tschak909
Obsessive compulsive Atari behavior
Obsessive compulsive Atari behavior
Posts: 138
Joined: Mon Mar 26, 2018 9:29 pm

PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby tschak909 » Sun Jun 16, 2019 6:30 pm

Hello, everyone.

It's been a very long road, and there were some serious bumps along the way, seven major rewrites to deal with performance and reliability issues, and trying to make something that is as clean of a GEM application as I can make it.

To this end, I have released a beta version for testing, so that I can get much needed feedback. This is especially important as I have been developing this entirely in emulation, with Hatari.

platoterm-titlescreen.png


You can get a copy here, with documentation:
https://github.com/tschak909/platoterms ... ERM-ST-0.5

Minimum Requirements:
-----------------------------------
* 520ST, with TOS 1.0
* Wifi Modem, and appropriate RS-232-C cabling.

Yes, STiNG support will come at some point, I am wrestling with getting it to work with my cross-development environment.

It has been tested under the following environments
---------------------------------------------------------------------------
* TOS 1.0
* TOS 1.02
* TOS 1.4
* TOS 2.06
* TOS 3.06
* EMUTOS
* Geneva
* MagiC 5
* NVDI 5

Known issues:
---------------------
* Program startup fails under MiNT (no crash, but it exits before window is opened)
* Starts, but does not work on Falcon because I need to select the correct serial port. (any help appreciated)
* screen drawing stops when not top window. It does decode the data, so when window is topped, it will resume. Need to write code path to handle.
* Paint redraws don't execute if the paint coordinate in terminal buffer is outside the damaged rect. Trying different solutions for this.
* occasional inconsistent protocol state after screen clear causes small glitches in redraw.
You do not have the required permissions to view the files attached to this post.

Fletch
Atari freak
Atari freak
Posts: 72
Joined: Fri Sep 12, 2008 1:11 am

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby Fletch » Sun Jun 16, 2019 6:36 pm

Tried out the latest build on my TT today and it works great! I appreciate the hard work.

Fletch
Atari freak
Atari freak
Posts: 72
Joined: Fri Sep 12, 2008 1:11 am

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby Fletch » Sun Jun 16, 2019 6:51 pm

IMG_7165.jpg
IMG_7164.jpg
IMG_7163.jpg
IMG_7162.jpg
You do not have the required permissions to view the files attached to this post.

joska
Hardware Guru
Hardware Guru
Posts: 4381
Joined: Tue Oct 30, 2007 2:55 pm
Location: Florø, Norway
Contact:

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby joska » Sun Jun 16, 2019 7:18 pm

tschak909 wrote:* Starts, but does not work on Falcon because I need to select the correct serial port. (any help appreciated)


See here: https://freemint.github.io/tos.hyp/en/x ... ml#Bconmap

tschak909 wrote:* screen drawing stops when not top window. It does decode the data, so when window is topped, it will resume. Need to write code path to handle.
* Paint redraws don't execute if the paint coordinate in terminal buffer is outside the damaged rect. Trying different solutions for this.


You normally don't have to have a special case for drawing to the top window. The easiest way to redraw your window is to wait for redraw-messages, then iterate through the dirty rectangles and redraw each of them. To initiate a (re)draw of (parts of) the window, just send yourself a redraw-message with the coordinates of the part you need to (re)draw. This way all redraws are handled with a single codepath, no special cases needed.
Jo Even

VanillaMiNT - Firebee - Falcon060 - Milan060 - Falcon040 - MIST - Mega ST - STM - STE - Amiga 600 - Sharp MZ700 - MSX - Amstrad CPC - C64

tschak909
Obsessive compulsive Atari behavior
Obsessive compulsive Atari behavior
Posts: 138
Joined: Mon Mar 26, 2018 9:29 pm

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby tschak909 » Sun Jun 16, 2019 7:44 pm

Tried that, performance went straight into toilet.

If you want to take a whack at it, please. :)

-Thom

tschak909
Obsessive compulsive Atari behavior
Obsessive compulsive Atari behavior
Posts: 138
Joined: Mon Mar 26, 2018 9:29 pm

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby tschak909 » Sun Jun 16, 2019 7:44 pm

Also, it's not clear which port in Bconmap is the falcon's RS232 (aka Serial port 2), which is it?

-Thom

Fletch
Atari freak
Atari freak
Posts: 72
Joined: Fri Sep 12, 2008 1:11 am

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby Fletch » Sun Jun 16, 2019 8:40 pm

It works just fine on the Falcon's 9 pin serial port.

IMG_7168.jpg
IMG_7167.jpg
You do not have the required permissions to view the files attached to this post.

User avatar
Estrayk
Captain Atari
Captain Atari
Posts: 239
Joined: Mon Nov 23, 2015 2:52 pm
Location: Spain

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby Estrayk » Sun Jun 16, 2019 11:15 pm

thanks for the work. waiting for STiNG support.
・Falcon ct60e・Atari MegaSTE ・Atari STe ・MIST ・

tschak909
Obsessive compulsive Atari behavior
Obsessive compulsive Atari behavior
Posts: 138
Joined: Mon Mar 26, 2018 9:29 pm

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby tschak909 » Sun Jun 16, 2019 11:26 pm

If someone could help inject in the necessary STiNG support, that'd be great.
-Thom

ThorstenOtto
Atari Super Hero
Atari Super Hero
Posts: 749
Joined: Sun Aug 03, 2014 5:54 pm

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby ThorstenOtto » Mon Jun 17, 2019 12:32 am

tschak909 wrote:Also, it's not clear which port in Bconmap is the falcon's RS232 (aka Serial port 2), which is it?


On Falcon (or other machine which don't have a 2nd MFP), bios device #8 is serial2.

But you don't need to mess with Bconmap (expect maybe to figure out which devices are present, there are also upgraded machines which have more than the usual serial ports), just use the corresponding BIOS device number directly in calls to Bconin() etc. Note that you should need the user to give a choice then which port to use. Or alternatively, always use device #6 instead of 1. And don't forget to restore the original setting before exiting.

joska
Hardware Guru
Hardware Guru
Posts: 4381
Joined: Tue Oct 30, 2007 2:55 pm
Location: Florø, Norway
Contact:

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby joska » Mon Jun 17, 2019 7:45 am

BIOS device 6 isn't available on all machines, so I would not use that by default. If you don't want to let the user select serial port in PLATOTERM directly you should always use device 1, and leave the serial port setup to an external program/accessory. When I first started using my Falcon I'm pretty sure I used an accessory that let me remap the SCC serial port to the standard BIOS device (no Falcon support in older comms software) but I can't remember it's name.

And yes, I meant to use Bconmap to populate a list of available devices.
Jo Even

VanillaMiNT - Firebee - Falcon060 - Milan060 - Falcon040 - MIST - Mega ST - STM - STE - Amiga 600 - Sharp MZ700 - MSX - Amstrad CPC - C64

ThorstenOtto
Atari Super Hero
Atari Super Hero
Posts: 749
Joined: Sun Aug 03, 2014 5:54 pm

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby ThorstenOtto » Mon Jun 17, 2019 8:19 am

joska wrote:leave the serial port setup to an external program/accessory.


IIRC that won't work with Mint, where the Bconmap settings are per process.

User avatar
spiny
Disk Imager Supreme
Disk Imager Supreme
Posts: 2596
Joined: Mon Aug 11, 2003 11:53 pm
Location: just outside bristol
Contact:

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby spiny » Mon Jun 17, 2019 8:34 am

I have no idea what I'm doing, and this ST isn't on the internet, but it seems to run OK

it's a 1meg FM, TOS1.04

plato.jpg
You do not have the required permissions to view the files attached to this post.

czietz
Hardware Guru
Hardware Guru
Posts: 987
Joined: Tue May 24, 2016 6:47 pm

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby czietz » Mon Jun 17, 2019 5:34 pm

It doesn't work so well, though, as soon as screen resolutions are used that weren't anticipated by the author. I tested on my 1040STf with a Vofa graphics card. In 640x480x16, 800x600x16, 800x600x256, 1024x768x16 and 1024x768x256 PLATOTERM simply crashes with an address error at startup.

In 640x480x2 colors [1] and 640x480x256 colors it works, but have a look at the attached screenshots. The contents of the menu bar ("1200") is shifted, also with 256 colors there's a drawing error with the PLATOTERM logo.

[1] Note that "2 colors" does not necessarily mean black & white. As you can see the palette is changed in 2 color mode, as well.
You do not have the required permissions to view the files attached to this post.

tschak909
Obsessive compulsive Atari behavior
Obsessive compulsive Atari behavior
Posts: 138
Joined: Mon Mar 26, 2018 9:29 pm

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby tschak909 » Mon Jun 17, 2019 5:56 pm

Thanks for testing! I'll fix the menu bar. :)

-Thom

User avatar
Eero Tamminen
Atari God
Atari God
Posts: 1956
Joined: Sun Jul 31, 2011 1:11 pm

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby Eero Tamminen » Tue Jun 18, 2019 9:16 pm

FYI: one way to test different resolutions, and some compatibility with non-standard graphics is using Hatari's VDI mode, and specifying some uncommon resolution, for example: "--vdi-planes 4 --vdi-width 800 --vdi-height 640".

Another one is using Hatari Falcon emulation with native Videl mode setting program like "Videl Inside", and using e.g. the high color (16-bit chunky) mode.

tschak909
Obsessive compulsive Atari behavior
Obsessive compulsive Atari behavior
Posts: 138
Joined: Mon Mar 26, 2018 9:29 pm

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby tschak909 » Tue Jun 18, 2019 9:22 pm

Indeed. good call.
-Thom

p.s. have verified that the program does run under MiNT, but the serial i/o isn't working.. am debugging..

also it looks like XaAES isn't doing the quarter screen backing store (used in normal TOS for the menus/dialogs) so that is exposing some superfluous redraws that I need to track down. This is good.

-Thom

ThorstenOtto
Atari Super Hero
Atari Super Hero
Posts: 749
Joined: Sun Aug 03, 2014 5:54 pm

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby ThorstenOtto » Wed Jun 19, 2019 12:30 am

tschak909 wrote:Indeed. good call.
also it looks like XaAES isn't doing the quarter screen backing store


No it isn't. Menus use just normal windows, like everything else. So yes, you will get redraw events when you open a menu and it covers part of your window.

tschak909
Obsessive compulsive Atari behavior
Obsessive compulsive Atari behavior
Posts: 138
Joined: Mon Mar 26, 2018 9:29 pm

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby tschak909 » Wed Jun 19, 2019 12:36 am

That's ok. I just need to figure out why i am not getting/sending serial I/O now, while it works under TOS. I temporarily removed the iorec revectoring, and explicitly added a Bconmap to the default ST serial device (6), so am wondering what else I need to do...

-Thom

tschak909
Obsessive compulsive Atari behavior
Obsessive compulsive Atari behavior
Posts: 138
Joined: Mon Mar 26, 2018 9:29 pm

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby tschak909 » Fri Jun 21, 2019 11:59 pm

Here is a bog standard Atari 1040STF, running PLATOTERM, TOS 1.02, no HSMOD, no NVDI, nothing.

It's pumping along at 19200 baud :)

https://www.youtube.com/watch?v=sra87dHJARM

vido
Atari Super Hero
Atari Super Hero
Posts: 693
Joined: Mon Jan 31, 2011 7:39 pm

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby vido » Sat Jun 22, 2019 9:31 am

This looks really nice! Congrats!
I hope I will be able to use it also on my FireBee under MiNT one day ... :)

Good work!!!

joska
Hardware Guru
Hardware Guru
Posts: 4381
Joined: Tue Oct 30, 2007 2:55 pm
Location: Florø, Norway
Contact:

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby joska » Sun Jun 23, 2019 8:31 am

Is this latest version available for download somewhere? The latest binary I found on github is from June 16th.
Jo Even

VanillaMiNT - Firebee - Falcon060 - Milan060 - Falcon040 - MIST - Mega ST - STM - STE - Amiga 600 - Sharp MZ700 - MSX - Amstrad CPC - C64

joska
Hardware Guru
Hardware Guru
Posts: 4381
Joined: Tue Oct 30, 2007 2:55 pm
Location: Florø, Norway
Contact:

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby joska » Sun Jun 23, 2019 8:38 am

The one from June 16th appears to work correctly in 800x600 on my Falcon under plain TOS. However, even in 256 colours it messed with the lower 16 colours. You should use colours > 16 when available in order to not mess up the AES colours.

Another thing I noticed is that when a redraw (and not just a blit) the colours are flashing.

Under MiNT it crashes due to a memory violation, that's probably the IOREC-issue.
Jo Even

VanillaMiNT - Firebee - Falcon060 - Milan060 - Falcon040 - MIST - Mega ST - STM - STE - Amiga 600 - Sharp MZ700 - MSX - Amstrad CPC - C64

User avatar
shoggoth
Nature
Nature
Posts: 971
Joined: Tue Aug 01, 2006 9:21 am
Location: Halmstad, Sweden
Contact:

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby shoggoth » Sun Jun 23, 2019 9:05 am

In 256 color modes, it makes sense to remap your pen indices to the palette instead of the other way around, IMO. It’s not that much work, and it’s a lot nicer than having your pretty desktop background turned into colorful vomit.
Ain't no space like PeP-space.

joska
Hardware Guru
Hardware Guru
Posts: 4381
Joined: Tue Oct 30, 2007 2:55 pm
Location: Florø, Norway
Contact:

Re: PLATOTERM for Atari ST - A PLATO terminal for IRATA.ONLINE - 0.5 Beta

Postby joska » Sun Jun 23, 2019 9:30 am

True, as long as the colour is present in the palette.
Jo Even

VanillaMiNT - Firebee - Falcon060 - Milan060 - Falcon040 - MIST - Mega ST - STM - STE - Amiga 600 - Sharp MZ700 - MSX - Amstrad CPC - C64


Social Media

     

Return to “Applications”

Who is online

Users browsing this forum: No registered users and 2 guests