|
#1
|
|||
|
|||
6800 Details
Hello!
I've implemented an Altair 680 on a Spartan-3E FPGA, unfortunately getting BASIC to load is giving me difficulties. I've found two versions of BASIC online and tried both with little success. I think my problem is the setting of the flag registers. Anyway, I guess my question is, do the TBA and TAB instructions affect the flag registers? Also, what is the proper behavior for CPX, ROR, ASR, and LSR? For a little background, I'm using a Spartan-3E starter kit attached to a VT-320. I'm using 16k of RAM (which is loaded on reset with BASIC) all implemented in the FPGA. If anyone's interested in the source (all Verilog), I'd be more than happy to provide it. Thanks! |
#2
|
|||
|
|||
Did you find this site from the S record header? One of the two versions probably came from me. I got the KCACR basic off of a real cassette tape. I've tested/verified two versions and released them out on the web.
I know this sounds stupid since you're obviously smart enough do the FPGA work... but have you been jumping to 0000? Are you sure your memory image is good? I can e-mail you mine. Can you run the 6800 ACIA monitor? I can send you the binary file for that if you want. Grant |
#3
|
|||
|
|||
I found this site searching for information about the Altair 680 actually
One of the two versions of BASIC I'm using came from this site. It gets to the point where displays the version info (and the RAM size, though incorrectly) and then just does bizzare things. The ACIA monitor runs perfectly... not sure where I found that..., I'm actually tempted to try VTL-2, though I haven't found a S file for that (I wrote a nice little C program to turn S files into Verilog). I have a PDF document with the VTL-2 assembly listing in it, but typing all that in would be painful. |
#4
|
|||
|
|||
Here's a picture of it running, still fighting with this guy
It dies after the PRINT. |
#5
|
|||
|
|||
Thanks for keeping me updated! Are you using a public core or your own? Have you made a test series for it and verified all of the opcodes and status bits?
The next step should be a vga core to emulate a terminal. There is a GREAT project out there that I tried on my Spartan 3 kit. It is a complete System09 on the board. VGA, PS2, monitor, etc. If you want I can try to find the site. It ran out of the box on the Digilent board. |
#6
|
|||
|
|||
I'm using my own core. I've developed a fairly large test for it, though
there are still several instructions that need to be exercised more. I got it to finally display the proper amount of free memory, though it still doesn't want to work right... More testing Of course the problem for a few things is that I don't know what the proper behavior should be. The two 6800 instruction set listings I have been using disagree on a few details: ftp://ftp.comlab.ox.ac.uk/pub/Cards/txt/6800.txt and http://www.electronics.dit.ie/staff/...structions.htm For example, one says CPX sets the carry flag, the other says it doesn't (of course one also gives the same opcode for TAB and TBA). Once I get everything working with the VT-320, PS/2 and VGA capabilities certainly would be fun Anyway, that System09 project looks pretty cool, I may have to load that up and give it a try. |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
For sale: SWTPC 6800 systems (running) | W0XEU | Classifieds | 3 | 09-07-2011 02:43 PM |
For Sale - 6800 SWTPC systems | W0XEU | Classifieds | 3 | 09-07-2011 02:41 PM |
Altair 680 front panel operation | sje | Altair 680 | 6 | 02-04-2008 05:33 AM |