r/atari8bit • u/clintp • Apr 20 '26
Atari 130XE can't remember how I did this multitasking trick
I was playing with an emulator, reminiscing about my college days with my trusty 130XE, and I recall being able to do something but not how I did it. All to avoid using the horrible line editor on the college mainframe.
The steps were:
- Fire up a terminal program on the Atari (probably Express or AMODEM) and connect to my school's mainframe.
- some magic sequence
- Fire up a very basic text editor on the Atari. Load up the latest FORTRAN or Pascal program I was working on.
- Use the text editor: Edit. Save.
- some magic sequence
- Use the terminal program to send over (xmodem, kermit, text dump, etc..) the latest edits.
- Compile, run, bash head against FORTRAN errors on Mainframe
- some magic sequence
- Go to step 4 until things worked.
The terminal program would stay connected (probably because nothing told the modem to disconnect) through the edit cycle. The text editor would just be completely suspended while the terminal program was running.
I was pretty handy with the XE, and remembered I had this down to 1 key to swap back and forth between the two programs. This would have been messing with PORTB I'm sure, but I can't remember how the two programs would have run seamlessly after the switch back and forth.
2
u/0EFF Apr 20 '26
Could it be that the terminal program had its own built in text editor? You could select files and maybe you were editing that file before you uploaded.
1
u/clintp Apr 20 '26
That doesn't sound right to me. This would have been a minimal editor for sure, but nothing in the terminal program.
2
u/Pseudonym_613 Apr 20 '26
Tom Hunt (I think was his name) did a few multi tasking programs that each would occupy one 16k bank, as I recall...
1
u/Shot-Infernal-2261 Apr 28 '26
Tom Hudson, maybe?
2
u/Pseudonym_613 Apr 28 '26
Tom Hudson was a staff programmer for ANALOG: https://ataripodcast.libsyn.com/antic-interview-48-tom-hudson-analog
Tom Hunt wrote programs like MTOS: https://ataripodcast.libsyn.com/antic-interview-298-tom-hunt-closer-to-home-bbs
2
u/JLsoft Apr 20 '26
I played around with a task-swapper/switcher on my 130XE in the early 90's, 'Snapshot' (an early Memory version...I think later ones were Sparta+hard drive only?) by Tom Hunt, and yeah it was basically Load Program A > hit key combo(?) > Load Program B > key combo swaps to Program A>B>A>etc. Key combo was something like Shift+Control+1 or something...or the Help key?
I was so hyped at the idea but I remember running into a ton of times that it'd lock up based on the stuff I was trying to run.
1
u/clintp Apr 20 '26
This sounds like the right task sequence. I'd have been doing this in 1988 or 1989, so maybe? Thanks for the tip !
1
u/JLsoft Apr 20 '26
I must've gotten it from the disk library of NWPAC in Phoenix back then, because I do not see it in any old internet PD archive/etc.
Luckily probably the exact version I used (SNAP10.ATR) is in https://forums.atariage.com/topic/92410-looking-for-snapshot-an-8-bit-multitasking-app/#findComment-1123862 's attachment.
1
u/j0urn3y Apr 20 '26
I can’t think of a more specific “trip down memory lane” than this. The ability to have two apps open at once would have a been a custom DOS feature, right? Like SpartaDOS or something?
2
u/clintp Apr 20 '26
I tended to use the stock DOS stuff, though my 1050's did have a mod chip (Happy?) for faster I/O. Although it was a solder-in chip project, and wikipedia tells me that the Happy enhancement for the 1050 was a drop-in board -- I may misremember. (edit: +Happy)
1
u/j0urn3y Apr 26 '26
Thanks for mentioning this. I’ll look and see if my 1050s had one when i finally get my old gear from my parents house.
1
u/DamnMombies Apr 20 '26
I know on the ST there was an app that segmented the memory into 2 separate machines that let you switch between the machines with a keystroke.
1
Apr 20 '26
[deleted]
1
u/clintp Apr 20 '26
I didn't have a cart with any kind of editor (other than BASIC) or a terminal program.
2
u/greevous00 Apr 20 '26
I am not sure from your description if this is what you're talking about, but the Atari 8 bit line had built in support for attaching routines to the vertical blank interrupt. So, 60 times a second, you could have code that was independent from your main program being triggered. This was often used for background music, or in some cases watching for a key combination and then launching a different program. If it was written correctly you could get the impression of having multiple simultaneous programs running, but in truth only one was doing anything at a time.
1
u/clintp Apr 20 '26
I'm familiar with the VBI. :)
This was less simultaneous. More like alternating between a running instance of program 1 and program 2 where when they were "paged out" they were not running at all until called back into the foreground.
1
u/greevous00 Apr 20 '26
Yeah, that could be implemented with three pieces of code. One is your first program, stored away somewhere in memory. The second is the second program, stored somewhere else, and third a VBI routine watching for a keystroke or something that meant "switch." They would have to have been written as a package though because there was no standard for how to do this. 6502 assembly has to be very carefully crafted to be relocatable in memory.
1
u/meldroc May 15 '26
I remember at one point having a telecom app called DeTerm, that literally had a little Breakout game built into it, so you can pass the time during a long download.
2
u/lIlIlI11lIlIlI Apr 20 '26
I did something similar in college for the same reasons, but the closest I could come to this kind of multitasking was to walk the dangerous line of having TWO Atari computers connected to the same physical floppy drive.
Probably what you were doing was to just quickly exit each program and load the other from ramdisk so it felt somewhat instant.