Third and final attempt at the Altair project

Vintage Events and off topic talk

Postby jmmm » Jan Mon 04, 2010 8:33 am

If you are going to be emulating the CPU, it might be worthwhile to add a slow step function, with minimal additional parts. You would be able to flip a switch and the machine would run at a slower speed so the lights would blink at a more appealing rate. It would definitely improve the wow-factor. What is everyone's opinion on this?

JMMM
jmmm
 
Posts: 10
Joined: Apr Thu 24, 2008 6:12 am

Postby vbriel » Jan Tue 05, 2010 8:22 am

That stuff is always possible to add. First I just want to get the "core" system working, then add-on features. I really want to get this project going this year.

Vince
User avatar
vbriel
Site Admin
 
Posts: 1184
Joined: Jul Tue 19, 2005 12:10 pm
Location: Ohio

Postby Bill Loguidice » Jan Tue 05, 2010 9:53 am

That sounds like a good approach, Vince. Whatever keeps the costs down of the core unit would be helpful too, as this one will no doubt be one of your most expensive works.
User avatar
Bill Loguidice
 
Posts: 35
Joined: Jun Mon 04, 2007 9:05 am
Location: Central New Jersey, USA

Altair project status update

Postby vbriel » Jan Sun 31, 2010 3:10 pm

Ok, I know this has been a long process and I'm still not finished, and the hardest part of this project is still being completed but I wanted to give status update.

One of the ideas I had to the Altair project was to not only make a front panel and PC Case but also something smaller, more handheld. This is still very early in the design process but I'd thought I'd let everybody know where I've been hiding lately.

Image

This is a prototype for my Altair Micro (name subject to change). It is 10"W X 7.75"D X 3"H. It has way more features on it than I was originally going to put on it.

Image

The front panel is fully programmable with the Exam, Deposit and STEP switches. I'm still working on the switch details because I'm using slide switches instead of toggle switches. I couldn't find any toggle switches that were small enough to really fit on the panel.

Image

A custom version of the PockeTerm is incorporated onboard with VGA and composite video output choices (or both), PS/2 keyboard.

Image

I've also added a SD card slot that the PockeTerm can use to send programs into the Altair. This section I have not yet tested and it will be the last thing I add in features.

So, where is the project right now. I have the LED's and switches tested working. I have the core emulation written and can do simple instructions like JMP and NOP.

I can single step through instructions (that was not easy to do) and that appears to be working great.

I am slowly adding instructions but this will take a while. Anybody who might see this and have Atmel AVR experience that can help with the 8080 emulation, feel free to email me. I'm still many days/weeks away from adding all the instructions but right now things are looking good. Once all the instructions are in I'll work on debugging instruction errors. Please understand that I'm a 6502 guy and the 8080 is pretty new to me. I'm looking into painting the case blue to match the Altair color scheme.

I don't want to get anybody's hopes up, anything major can still go wrong to blow up the project but I know people have emulated 8080 machines with Atmel AVR microcontrollers so it is very possible. I'm not using their code but I use it as a reference when needed.

Specs:

Emulated 8080 run at speed or faster than original
32K RAM with BASIC loaded at power up (still in the works may have to load from SD card)
VGA or composite TV video output to a monitor
PS/2 keyboard
SD card slot to load/store software through terminal section
Battery option (not tested, may not work well with so many LED's)
Diode circuit protection for battery/DC input.

Open to questions and suggestions.

Vince
User avatar
vbriel
Site Admin
 
Posts: 1184
Joined: Jul Tue 19, 2005 12:10 pm
Location: Ohio

Postby Des » Jan Sun 31, 2010 7:07 pm

Hi Vince

thanks for updating us, I like what I see very much,

do you have a ball park price figure you are working the kit into?



The only other thing I would like to see, but I would still buy one as is is an expansion port, like on your Apple1 replica, so that in the future people could make up an S-100 expansion board, or you could offer it? for running cards, if that is possible.

I would imagine a lot of people would be happy to play with it as is SD slot, video, keyboard really does away the need for expansion for most people.


just tossing in some ideas..
-
Kind Regards
Des
User avatar
Des
 
Posts: 20
Joined: Aug Sun 16, 2009 7:52 pm

Postby vbriel » Jan Sun 31, 2010 10:08 pm

Estimated kit price would be $199. That would include the case and custom front panel, 2 pcb's, cables to connect the pcbs and all the components. Just add your own power supply, keyboard and monitor VGA or composite and you'll be all set.

Please keep in mind, this is still very very early. I don't have the emulation of the CPU anywhere near finished. I just don't want people to start getting worked up until I have a working and fully debugged machine. Then get excited because this thing has a fun geek factor of 10!

Vince
User avatar
vbriel
Site Admin
 
Posts: 1184
Joined: Jul Tue 19, 2005 12:10 pm
Location: Ohio

Postby Bill Loguidice » Feb Tue 02, 2010 3:17 pm

That is a tremendous price. I'd probably want a fully assembled one, so I hope that's still an option.
User avatar
Bill Loguidice
 
Posts: 35
Joined: Jun Mon 04, 2007 9:05 am
Location: Central New Jersey, USA

Postby vbriel » Feb Tue 02, 2010 7:47 pm

Bill Loguidice wrote:That is a tremendous price. I'd probably want a fully assembled one, so I hope that's still an option.


Yeah, I know, I don't believe in making a profit :) I have to estimate build time, this one takes a while because of the 2 boards and tons of LED's and switches. I estimate $249 for assembled.

I've finished about 48 of the 250 opcodes. I've run some simple commands and the step and run process is working. Can't wait to see basic up and running!

Vince
User avatar
vbriel
Site Admin
 
Posts: 1184
Joined: Jul Tue 19, 2005 12:10 pm
Location: Ohio

Postby vbriel » Feb Thu 04, 2010 1:32 pm

Half of the opcodes are now entered and software verified through simulation. Ahhhhh, too many opcodes. Probably another week or two before I get them all in!
User avatar
vbriel
Site Admin
 
Posts: 1184
Joined: Jul Tue 19, 2005 12:10 pm
Location: Ohio

Postby Fippy » Feb Fri 05, 2010 2:20 pm

Here's where I show my ignorance of the Altair...

If it is going to have video output, keyboard and SD card support, why all the front panel switches? Is this just to make it compatible with the original Altair that had no display or keyboard? Or they are an essential part of the single stepping instructions? In which case do the switches work in conjunction with the keyboard/video display or is it one or the other?

Which begs the next question... could you provide a cut down version that is just the board, i.e. no case, no switches, which sounds like is the most fiddly bit, hardware-wize? i.e. sell it like the Replica 1.

I appreciate folks wanting an original Altair for nostalgia, but I don't have the patience for those switches. :)

Thanks!
Fippy.
User avatar
Fippy
 
Posts: 23
Joined: Dec Sun 20, 2009 11:36 pm
Location: San Diego, California

Postby Bill Loguidice » Feb Fri 05, 2010 2:30 pm

That's an interesting perspective, Fippy. I want one for precisely the opposite reason from you, as I'd like to work with a switched computer for historical and nostalgia purposes. Getting an authentic one is cost prohibitive (at least I don't have $1000+ to get one) and ensuring that it works is a lot tougher than mass market computers. So something in the authentic style with modern circuitry will prove extremely invaluable.
User avatar
Bill Loguidice
 
Posts: 35
Joined: Jun Mon 04, 2007 9:05 am
Location: Central New Jersey, USA

Postby vbriel » Feb Sun 07, 2010 10:19 am

First program for the Altair tested. I don't have all the opcodes in but I'm getting close. I was working on the OUT opcode to send data to an output port and decided to try the serial port. My little program:

Code: Select all
LOOP:
MVI  A, 41       ;LOAD A WITH 41 (CHARACTER A)
OUT  11          ;OUTPUT A TO SERIAL PORT (PORT 11)
JMP  LOOP        ;LOOP FOREVER


This just sends the character "A" out constantly to the serial port. It works perfectly. Just a little visual success at this point. I'm sure I will have to debug a lot of code in when I'm done.

Vince
User avatar
vbriel
Site Admin
 
Posts: 1184
Joined: Jul Tue 19, 2005 12:10 pm
Location: Ohio

Postby vbriel » Feb Sun 07, 2010 11:10 am

More testing, this time IN was tested. Port 10 on the Altair contains byte ready info. In this loop, we loop for bit0 being a 1 on port 10, then we know we have incoming data from the terminal.

When we have the data, we turn around and output it to the terminal output. So, this program is a test for the Altair 8800 to make sure your terminal is communicating with the Altair properly. Everything you type goes back to the terminal and gets displayed.

Actual Altair 8800 code:

Code: Select all
LOOP:
IN     10      ;WAIT FOR CHARACTER
RRC            ;ROTATE ACC RIGHT WITH CARRY
JNC    LOOP    ;LOOP IF CARRY BIT NOT SET (NO DATA)
IN     11      ;READ INPUT PORT
OUT    11      ;SEND INCOMING DATA BACK OUT


This code also works perfectly. Things are moving along very fast.

Vince
User avatar
vbriel
Site Admin
 
Posts: 1184
Joined: Jul Tue 19, 2005 12:10 pm
Location: Ohio

Postby Des » Feb Tue 09, 2010 7:34 pm

Interesting comments, I was thinking about that this morning...


Excuse my ignorance but the switches on the original Altair 8800 were used to boot strap the system from the monitor to BASIC, or to boot strap it to load a floppy disk, yes?

Vince will yours already have a boot ROM, to load into the Pocket Term mode?
or as an example a front panel switch to toggle that ON/OFF,

The Altair 680 Turnkey didn't have front panel switches, rather a Boot ROM to load directly from a floppy disk.


thoughts?






Fippy wrote:Here's where I show my ignorance of the Altair...

If it is going to have video output, keyboard and SD card support, why all the front panel switches? Is this just to make it compatible with the original Altair that had no display or keyboard? Or they are an essential part of the single stepping instructions? In which case do the switches work in conjunction with the keyboard/video display or is it one or the other?

Which begs the next question... could you provide a cut down version that is just the board, i.e. no case, no switches, which sounds like is the most fiddly bit, hardware-wize? i.e. sell it like the Replica 1.

I appreciate folks wanting an original Altair for nostalgia, but I don't have the patience for those switches. :)

Thanks!
-
Kind Regards
Des
User avatar
Des
 
Posts: 20
Joined: Aug Sun 16, 2009 7:52 pm

Postby vbriel » Feb Thu 11, 2010 7:55 am

First I'm going to meet my project goals which is that it loads and runs basic, can be programmed from the front panel. After it can perform those tasks, I'll start adding features.

Right now the way I have it set up is pretty simple. The ATMEGA chip is the CPU and control logic. It is connected to latches to control the switches and LED's. It is also connected to the 32K SRAM in a bus system close to the 8085 with shared address A0-A7 and D0-D7 with a ALE latch. These pins could be run to expansion bus but I haven't put them on a scope or my logic analyzer to test the signal timing yet. That will be later

Right now, I have BASIC stored in the Propeller chip (AKA PockeTerm) and on power up, it sends BASIC over to the ATMEGA chip and gets stored in RAM. I may have room to also store 8K BASIC and you can select via a switch on start up which one to load. I'll figure that out later.

I'm stepping through the instructions one step at a time until I hit a bug and fixing it. I have the ATMEGA outputting all the flags registers and stack of the 8080. I can compare this to the ALTAIR32 emulator for PC's and slowly I'll get this going.

I am feeling more confident I'll get this going but I'm still a long ways off.

The other thing I'm working on is programming updates. Since most people don't have AVR programmers, I have to come up with a simple solution for users to be able to program their own updates. This way, you don't have to send in a ATMEGA chip to get reprogrammed.

Other things I may change:

Now that I've thrown a few thousand switches on the front panel I can come up with a conclusion to the small switches. They are small. The single step switch is not a momentary switch and requires throwing the switch back off, this is a pain. I may change the step, deposit/deposit next, exam/exam next to buttons with long poles on them. This will keep the look but make things 1000 times better.

Keep in mind, this only applies to the small version I call the ALTAIR 8800 MICRO. There will also be a full sized version that will have the standard toggle switches on it for those that want that realistic panel.

Things are coming along, I'll try and snap some video of me debugging and what I'm going through to get this done.

Vince
User avatar
vbriel
Site Admin
 
Posts: 1184
Joined: Jul Tue 19, 2005 12:10 pm
Location: Ohio

PreviousNext

Return to Venues, projects and off topic stuff - NO SPAM

Who is online

Users browsing this forum: No registered users and 1 guest

cron