• Please review our updated Terms and Rules here

ALTAIR 4.0 8K basic initialization question...

Corey986

Administrator
Joined
Dec 7, 2011
Messages
821
Location
East Coast USA
Is there a way to hot start basic where you can change the IO ports for input but not erase the program in memory or be prompted for mem size and stuff like that?

Thanks,
Corey
 
Since the initialization code is overwritten when basic starts, I would say no. The code is gone.
This doesn't prevent you from changing the IO manually and warm starting basic.

joe
 
Corey,

I have a version of 8K BASIC v4.0 that I patched to allow this. I assume you are you running on a machine with a front panel? How do you load 8K BASIC on your machine - i.e., are you needing an Altair tape image or just a hex or binary image ready to load into memory?

Mike
 
Corey,

I have a version of 8K BASIC v4.0 that I patched to allow this. I assume you are you running on a machine with a front panel? How do you load 8K BASIC on your machine - i.e., are you needing an Altair tape image or just a hex or binary image ready to load into memory?

Mike

I’m using Martin’s MBL and the OP-80A
 
Ok, I can make a standard bootable tape image for you then. Can you punch the tape?

Out of curiosity, tell us about the configuration of your machine/ports and the reason you need to change ports after you’re up and running.

Mike
 
Ok, I can make a standard bootable tape image for you then. Can you punch the tape?

Out of curiosity, tell us about the configuration of your machine/ports and the reason you need to change ports after you’re up and running.

Mike

Well the plan is for the VCF museum ALTAIR. I was going to hook up a UART to the OP80 so that we could have visitors pull paper tape of punched software and see it displayed using the ADM serial chaining. When I got your small adapter board for the SSM parallel IO board it simplified things so we could use CLOAD in basic but can’t see the code appear on the terminal while loading. Trust me simple is better since there is generally less that can go wrong in a museum situation.

So I was thinking if I punch out a paper tape that has a bunch of “NULLs” at the end of each line if they pull the tape too fast by switching the keyboard input easily to input at 6/7 while still outputting to the serial on port 0/1 then they could see the program load while they pull the tape though the OP-80. When a full program is done I want an easy way to switch back to input on the serial on 0/1.

Right now to simply things until I work this out, I am just using an echo program where the museum visitor can just pull the tape though the reader and the text appears on the serial port of the ALTAIR. Simple, but not cool enough, I want them to be able to run a small program they pull though the reader.

Thanks,
Corey
 
Ok, now I understand. Unfortunately, what I have won't work for you then. What I have done duplicates the functionality of the CONSOLE command that is available in Extended BASIC. Both input AND output of the console device is switched to the device you specify on sense switches A15-A12.

I could probably work up a patched version of 8K BASIC that does what you need. From what I understand for your application, console output always remains the same, but you want to switch console input between 6/7 and 0/1, correct?

Mike
 
I could probably work up a patched version of 8K BASIC that does what you need. From what I understand for your application, console output always remains the same, but you want to switch console input between 6/7 and 0/1, correct?

Mike

That's exactly what I need. The best would be a way to simply change a sense switch while running basic and not even have to stop/restart it.

If you could do 4K basic, it's even better quicker loading time even though it's not as useful missing CLOAD and other commands, it's enough for the demonstration.

Thanks for all your help.

Cheers,
Corey
 
If you could do 4K basic, it's even better quicker loading time even though it's not as useful missing CLOAD and other commands, it's enough for the demonstration.

Let me know for sure which BASIC you want me to mod since the work isn't easily transferable between them. If 4K BASIC, do you want v3.2 or v4.0? Is it safe to assume the console and load ports are always going to appear to software as an 88-SIO at 0/1 and an 88-SIO at 6/7?

Mike
 
Ok, 4K BASIC v4.0 it is.

Is it safe to assume the console and load ports are always going to appear to software as an 88-SIO at 0/1 and an 88-SIO at 6/7?

Mike
 
I've posted the patched version of 4K BASIC here: https://deramp.com/downloads/altair/software/papertape_cassette/4K BASIC Port 6/

The file 4KBAS406.TAP is paper tape (or cassette) image of Altair 4K BASIC version 4.0 with patches applied to provide additional I/O port support for loading and saving programs. If A15 is raised, then console input comes from an 88-SIO port at 6/7 (e.g. the cassette interface) in addition to the BASIC console. Lowering A15 stops console input from port 6/7. If A14 is raised, then console output is directed to an 88-SIO port at 6/7 in addition to the BASIC console (output goes to both). Lowering A14 stops output to port 6/7.

IMPORTANT: When loading 4KBAS406.TAP, use the 8K BASIC verion 4.0 bootstrap loader, NOT the 4K BASIC version.

Mike
 
OK I just realized, you have the source for basic, correct? What compiler are you using to produce your bin file in case I want to make changes myself later?

Thanks,
Corey
 
Unfortunately no, I don't have the source. The listing I posted is just an automated disassembly I used to figure out where to hook into BASIC for the patches.

Mike
 
Back
Top