FabGL + Altair 8080 and PC emulation Disks?

767 views
Skip to first unread message

Walt Perko

unread,
Apr 3, 2023, 8:10:30 PM4/3/23
to Altair-Duino
Hi, 

Has anybody loaded the Altair 8800 emulation into their ESP32 and tried looking at drive C: and drive D: ??? 

I've loaded it a few times, but those .DSK files seem corrupted.  

I did the same with the PC Games programs ... but this time, the emulator couldn't download the files needed.  Seems the website has gone away!  

I am hoping to get uncorrupted .dsk files for the ESP32 Altair 8800 emulator though.   


.

Walt Perko

unread,
Apr 9, 2023, 11:31:20 PM4/9/23
to Altair-Duino
Hi, 

Hasn't anybody tried the Altair 8800 emulation or PC emulation on the ESP32 terminal boards?   

I found new not found other places software in the emulations, which is why I want to get the .DSKs that give me sector errors for the Altair 8800 drive C: and drive D:  and  the PC Games emulation.  


.

Tom Lake

unread,
Apr 10, 2023, 6:59:50 AM4/10/23
to Altair-Duino
Since I have an AltairDuino and just use the ESP32 as a terminal, I see no need for it to do any emulation. To me, the interest in an Altair, IMSAI or PDP-11 replica is in the blinking lights and front panel in general even if I don't use the panel for IPL (Initial Program Load) Just as I wouldn't be interested in either a real Turnkey Altair or replica of one, I wouldn't be interested in making the ESP32 act like an Altair. Now computers that never had a front panel such as the SWTPC 6800 would be interesting to me since they're outside the 8080 world and were still historically significant. YMMV.

Walt Perko

unread,
Apr 10, 2023, 7:35:45 AM4/10/23
to Altair-Duino
Hi, 

I was exploring the various emulations in the FabGL library ... that's where I found several 8080 programs that are nowhere else on the internet to be found via several search engines including ChatGPT.  

There are potentially more IF the to drives C: and D: .dsk files can be found.  

Same thing for the PC Game machine.  The URL seems to be a dead link, but if somebody got these emulations before they went dead or were brokent, then maybe we can recover the fiels for others.  


I find it relaxing to play with the various games inbetween trying to learn MBASIC and building circuit boards.  

The new games I found in the Altair 8800 emulator are fun.  What's nice is they also run perfectly on my Altair 8800c computer.  I also found terminal programs, one  thought to be fictional-ware.  

Yes, the blinky's are great, I have four going now ... Two Altair-Duino Pros, an Altair 8800c and an IMSAI-JAIR.  Soon I will have an IMSAI-ZPU (Cromemco Z-1 enhanced).  Also, I am planning on building a Z180 machine in an old PC case ... No front panel, but speedy!  

Resurrecting lost software helps to keep the hobby interesting and moving forward, same for developing new programs for these vintage machines.  Some of the "specialized" software for sepcific terminal screens is a little disconcerting, but eventually, we should have versions of those programs that can accommodate any terminal.  

I am currently working on a program to allow a person to type a message and hear the Morse code for that message via the SpeakJet chip hanging on my RS-232 serial board.  The adaptability to almost any S-100 type computer is built-in so the program can operate on any serial port on any machine.  

Yes, the Blinky's are nice to look at, but playing with new programs, makes them more fun.  


.
Message has been deleted

Walt Perko

unread,
Apr 10, 2023, 1:46:28 PM4/10/23
to Altair-Duino
Hi, 

The CP/M in the Altair 8800 as the Altair 8800 emulation "BOOTs" shows A:, B:, C:, and D: drives mounting.  

The GitHub doesn't have the .DSK files, just the bigger system of loading the ESP32 with all the emulations.  

This is why I'm hoping somebody got a fully functioning  FabGL library examples and can either post it all.  

The two problems I found are the failing DiskC.dsk and DiskD.dsk files and the PC Gaming link for the PC XT emulator.  

It's easy to load all the various examples, one at a time, then copy the microSD card with all the working files to .zip and share with everybody.  

It's really too bad that the Github doesn't have the fully-loaded .zip file of all the examples ready to plug-into the microSD card slot.  


.




On Monday, April 10, 2023 at 9:06:57 AM UTC-7 John Galt wrote:
the disks for the 8800 emulator are here

there are different creations of CP/M some do not support C and D devices. if you have the wrong version of CP/M where it sees files a little different then your disks appear to contain gibberish.

you can get around that using CPMTOOLS and list the files on the "corrupt" disk, pull them off and then upload them to your version of CP/M that works under your machine. you can also try that altair cpmtools that a member made as its easier to use then cpmtools.

many disks for cp/m have been created and filled on various hardware kaypros, sols, etc and has slightly altered versions of the o/s which look like the disk is corrupted but its just your bootdisk for cp/m is different then the data disks your trying to read.

the PC emulator comes with a few disk images which you download from the server Fabio has linked or you can create your own images however its a whole pain in the butt procedure to get the images to load under FABGL

you have to manually create a blank FAT16/32 image then under dosbox you have to use imgmount it, format it and then load it with what you want then you can put it on the SD card for the VGA32/ESP32. there is no good way to network the esp32 because it does not have a second serial port, and your usually using the main serial for the mouse or another device. so you have this pain of having to go back and forth with DOSBOX and loading all the utilites or games you forgot you needed.
its cute but it only supports CGA graphics and thus you just go back to using DOSBOX on your main desktop pc since its faster and you can direct mount your main harddrive for storage.
Message has been deleted
Message has been deleted

Walt Perko

unread,
Apr 10, 2023, 8:27:11 PM4/10/23
to Altair-Duino
Hi, 

I try and try, but the one PC Games emulation will not download ... All the other emulations download, install and run just fine.  

It looks like the URL to the files is faulty.  Here is the sequence of screens for that install. 

IMG_4977-20230410-FabGL Loads & Fails-2K.JPG

IMG_4981-20230410-FabGL Loads & Fails-2K.JPG

IMG_4982-20230410-FabGL Loads & Fails-2K.JPG

IMG_4980-20230410-FabGL Loads & Fails-2K.JPG



.


On Monday, April 10, 2023 at 11:38:58 AM UTC-7 John Galt wrote:
on the pc emulator i downloaded all available partitions some months ago. i used to have the address for direct

its all in the http://www.fabglib.org/downloads directory as image files.

its buried in the source code

Download first floppy image from "http://www.fabglib.org/downloads/A_freedos.img" and first hard disk image from "http://www.fabglib.org/downloads/C_dosdev.img". Boot from floppy:
    desc "FreeDOS (A:) + DOS Programming Tools (C:)"  fd0 "http://www.fabglib.org/downloads/A_freedos.img"  hd0 "http://www.fabglib.org/downloads/C_dosdev.img"

static const char DefaultConfFile[] =
  "desc \"FreeDOS (floppy 1.44MB)\"                    fd0 http://www.fabglib.org/downloads/floppy_FREEDOS.img"           NL
  "desc \"MS-DOS 3.31 (floppy 1.44MB)\"                fd0 http://www.fabglib.org/downloads/floppy_MSDOS331.img"          NL
  "desc \"CP/M 86 + Turbo Pascal 3 (floppy 1.44MB)\"   fd0 http://www.fabglib.org/downloads/floppy_CPM86.img"             NL
  "desc \"Linux ELKS 0.4.0 (floppy 1.44MB)\"           fd0 http://www.fabglib.org/downloads/floppy_ELK040.img"            NL
  "desc \"FreeDOS (HDD 8MB)\"                          hd0 http://www.fabglib.org/downloads/hd8_FREEDOS.img     boot hd0" NL
  "desc \"DOS Programs and Games (HDD 20MB)\"          hd0 http://www.fabglib.org/downloads/hd20_DOSPROG.img    boot hd0" NL
  "desc \"DOS Programming Tools (HDD 20MB)\"           hd0 http://www.fabglib.org/downloads/hd20_DOSDEV.img     boot hd0" NL
  "desc \"Windows 3.0 (HDD 20MB)\"                     hd0 http://www.fabglib.org/downloads/hd20_WINHERC.img    boot hd0" NL
  "desc \"GEM 3.13 (HDD 8MB)\"                         hd0 http://www.fabglib.org/downloads/hd8_GEM31.img       boot hd0" NL
  "desc \"GEOS 2.0 (HDD 20MB)\"                        hd0 http://www.fabglib.org/downloads/hd20_GEOS20.img     boot hd0" NL
  "desc \"MS-DOS 5.00 (HDD 8MB)\"                      hd0 http://www.fabglib.org/downloads/hd8_MSDOS500.img    boot hd0" NL
  "desc \"MS-DOS 6.22 (HDD 8MB)\"                      hd0 http://www.fabglib.org/downloads/hd8_MSDOS622.img    boot hd0" NL
  "desc \"SvarDOS (HDD (hDD 10MB)\"                    hd0 http://www.fabglib.org/downloads/hd10_SVARDOS.img    boot hd0" NL;


On Monday, April 10, 2023 at 2:29:47 PM UTC-4 John Galt wrote:
ok when looking at the INO information for the altair 8800 emulator

you find the reference:

// Specify which disk image or file name assign to drives
#define DRIVE_A cpm22_dsk     // A: read only (or read/write using SD Card)
#define DRIVE_B games_dsk     // B: read only (or read/write using SD Card)
#define DRIVE_C "diskC.dsk"   // C: read/write (remember to FORMAT!!)
#define DRIVE_D "diskD.dsk"   // D: read/write (remember to FORMAT!!)rite

diskC and DiskD appear to be blank disk images for you to use as you wish. that is why you can not access them they are just blanks images.

(remember to FORMAT!!)
Message has been deleted

Walt Perko

unread,
Apr 10, 2023, 10:18:58 PM4/10/23
to Altair-Duino
Hi,  

I can download that .img files, but I don't know how to load it into the Arduino IDE to send it to the ESP32 module.  


.

On Monday, April 10, 2023 at 7:06:56 PM UTC-7 John Galt wrote:
if i just copy paste:  http://www.fabglib.org/downloads/hd20_DOSPROG.img
i download the image instantly.

if you cannot download the link above then your blocking access on your end.
Message has been deleted

Walt Perko

unread,
Apr 10, 2023, 11:16:22 PM4/10/23
to Altair-Duino
Hi, 

YES, there is a 1GB microSD in the board.  Like I said, the Altair 8800 loads, but the two drives are corrupted.  All the other emulations download and install and seem to work okay except for the PC Games emulation.  That's why I showed those photos of the failure.  

On the microSD card is ONLY .PRG and .DSK files, nothing else, no .IMG files.  




On Monday, April 10, 2023 at 8:01:48 PM UTC-7 John Galt wrote:
it goes on the SD card.... that is a good question did you put a SD card into the ESP32? if you don't have a SD card installed that would explain why you can not download anything, as you do not have local storage on the ESP32.
Message has been deleted

Walt Perko

unread,
Apr 11, 2023, 12:05:10 AM4/11/23
to Altair-Duino
Hi, 

But can you get the PC Games image to load?   That's the one that is failing me.  

I saw the earlier post about  formatting the two drives.  That's something I'll have to look up in the CP/M manual tomorrow.  


.


On Monday, April 10, 2023 at 8:55:24 PM UTC-7 John Galt wrote:
i just copy my images on the SD and load them in the menu.

the default disk C and D for the altair are not corrupted they are place holders. they are totally blank images that you have to format to use. or you replace them on the SD card with your own C and D disks.
Message has been deleted

Walt Perko

unread,
Apr 11, 2023, 1:43:28 AM4/11/23
to Altair-Duino
Hi, 

Yeah, I wish I had a 2" long microSD card extension cable to bring the microSD card out of the little 3D printed box.  


.


On Monday, April 10, 2023 at 9:24:05 PM UTC-7 John Galt wrote:
you actually can't format disks under Cp/M.
you had to buy the disks preformatted. 
cpmtools and what not can make disks.

i remember looking around 2 years ago as i had the same question how do you format a disk on altair... the conclusion was they sold preformatted disks with filed with E5s Hex which allowed cp/m to use the disk and you could start filling them and transfer the O/s to them. when you create a new disk with CPMTools it makes a image file of the disks size in bytes and fills it with E5s.

i remember loading and using the PCGames image it was a long time ago now.

there was not much on those images and i made a 135 and a 256 meg hard drive image and was filling those with apps and games for dos 6.22

i was using these as a staging point i would test things out under dosbox then go and load the SD card for the ESP32. my ESP32 is in a case so it required taking it apart to change the SD card and it was another pain.

everything for the PC is well archived and there are 100s of sites you can download everything ever made from.
i even have R12 Autocad

Walt Perko

unread,
Apr 11, 2023, 8:40:41 AM4/11/23
to Altair-Duino
Hi, 

It was easy to format C: and D:  ... The bold is what I typed to get the job done.  


63K CP/M
Version 2.2mits (07/28/80)
Copyright 1980 by Burcon Inc.

A>FORMAT


*** DISKETTE INITIALIZER ***

DISK DRIVE (A-P)? C

SECTORS PER TRACK: 32
SECTORS PER BLOCK: 16
BLOCKS PER DISK:   149
RESERVED TRACKS:   2
TRACKS PER DISK:   77

COMMAND: FULL
WARNING: THIS COMMAND DESTROYS ALL DATA ON THE DISK
TYPE C TO CONTINUE, A TO ABORT WITHOUT LOSS.

PROCESSING TRACK# 76
INIT DONE - NOW VERIFYING DISKETTE
PROCESSING TRACK# 76
NO ERRORS FOUND ON THIS DISKETTE


COMMAND: STOP
A>DIR C:
No file
A>



On Monday, April 10, 2023 at 9:24:05 PM UTC-7 John Galt wrote:
you actually can't format disks under Cp/M.
you had to buy the disks preformatted. 
cpmtools and what not can make disks.

i remember looking around 2 years ago as i had the same question how do you format a disk on altair... the conclusion was they sold preformatted disks with filed with E5s Hex which allowed cp/m to use the disk and you could start filling them and transfer the O/s to them. when you create a new disk with CPMTools it makes a image file of the disks size in bytes and fills it with E5s.

i remember loading and using the PCGames image it was a long time ago now.

there was not much on those images and i made a 135 and a 256 meg hard drive image and was filling those with apps and games for dos 6.22

i was using these as a staging point i would test things out under dosbox then go and load the SD card for the ESP32. my ESP32 is in a case so it required taking it apart to change the SD card and it was another pain.

everything for the PC is well archived and there are 100s of sites you can download everything ever made from.
i even have R12 Autocad


Walt Perko

unread,
Apr 11, 2023, 8:52:05 AM4/11/23
to Altair-Duino
Hi,  

I forgot to add the photo:  

IMG_4986-20230411-Formatting Disk CPM-c2K.JPG

.

Message has been deleted

Walt Perko

unread,
Apr 11, 2023, 12:12:47 PM4/11/23
to Altair-Duino
Hi, 

Yes, it is possible to perform a low-level format on a hard disk from CP/M. However, the process and commands required to do so will depend on the specific version of CP/M and the type of hard disk controller being used.

In general, the low-level format process involves writing the physical tracks and sectors onto the hard disk, and can only be performed by specialized software or firmware provided by the hard disk manufacturer. This process should not be confused with a high-level format, which simply initializes the file system structures on the disk.

To perform a low-level format on a hard disk from CP/M, you will need to obtain the appropriate formatting software for your specific hard disk controller and follow the manufacturer's instructions for using it. This may involve booting from a special diskette or other media containing the formatting software.

Note that low-level formatting will erase all data on the disk, so be sure to back up any important files before proceeding.



ChatGPT, the computer they used in Star Trek back in the 1960s!   

Sadly, if they connect A.I. ChatBots to the internet, they will become corrupted with fake news, fake photos, fake everything!  No morality = the END.  


.

On Tuesday, April 11, 2023 at 8:19:25 AM UTC-7 John Galt wrote:
its not a low level format with format.com
the disk has to already be readable to cp/m.

its slightly more thorough then using DEL *.* and hitting "Y"

Walt Perko

unread,
Apr 11, 2023, 12:15:07 PM4/11/23
to Altair-Duino
Hi, 

Yes, it is possible to perform a low-level format on a floppy disk from CP/M. In fact, formatting floppy disks was a common task in the early days of personal computing when floppy disks were the primary means of storing data.

To perform a low-level format on a floppy disk from CP/M, you can use the "FORM" command followed by the appropriate parameters. The exact syntax of the command may vary slightly depending on the version of CP/M you are using, but the basic format is:

cssCopy code
FORM [drive:][density][interleave]

The "drive:" parameter specifies the letter of the floppy disk drive (A: or B:), and the "density" parameter specifies the density of the disk (single or double). The "interleave" parameter specifies the number of sectors between successive sectors on a track, and can be used to optimize disk access speed.

For example, to format a double-density floppy disk in drive A: with an interleave of 2, you would enter the following command:

cssCopy code
FORM A:2D2

Note that low-level formatting will erase all data on the floppy disk, so be sure to back up any important files before proceeding. Also, keep in mind that low-level formatting is generally not necessary for modern floppy disks, as they typically come pre-formatted and ready for use.




Message has been deleted

Walt Perko

unread,
Apr 11, 2023, 5:15:07 PM4/11/23
to Altair-Duino
Hi, 

Here's a new problem.  IF the Arduino IDE uses COM20 to connect to the TTGO ESP32 ... shouldn't TeraTerm connect there too?  

IF so, then what is the BAUD rate of the Arduino IDE?  I can only guess that's the BAUD rate I need to set in TeraTerm.  


.

On Tuesday, April 11, 2023 at 10:23:21 AM UTC-7 John Galt wrote:
great information, thank you.

Walt Perko

unread,
Apr 13, 2023, 8:32:33 PM4/13/23
to Altair-Duino
Hi, 

I typed in the "GALAXY.BAS" program and saved it on the newly formatted C: drive.  Then I ran it and noticed that it's really fast!  My Altair 8800c computer is about 4-seconds from bottom to top scrolling, my Altair-Duino Pro w/Sol-20 emulation is about 3-seconds from bottom to top scrolling, the LILYGO TTGO ESP32 w/Altair 8800 emulation is about 2-seconds from bottom to top scrolling.  Essentially, twice as fast as a real 8080 CPU.  

I still cannot figure out why PCGET on the  LILYGO TTGO ESP32 w/Altair 8800 emulation doesn't receive files from my PC/TeraTerm ???  The  LILYGO TTGO ESP32 w/Altair 8800 emulation acts as if there is not connection!  

It's as if the BAUD rates don't match, but the Arduino default is 115200, so that's what I setup in TeraTerm ... 

My PC can't seem to connect via BlueTooth which would be nice.  I'm wondering if I need to turn BlueTooth and WiFi ON in the module before I load one of the computer emulations?   Seems I need something in the module first to do anything like that.  

I haven't found any instructions for that so far.  


.

Walt Perko

unread,
Apr 14, 2023, 4:23:19 PM4/14/23
to Altair-Duino
Hi, 

Okay, I finally got the PC Games disks to load!  I changed the Arduino IDE to point to:  https://dl.espressif.com/dl/package_esp32_index.json

and that seems to have gotten everything.  Now I have the PC games working on the TTGO module.  


.
Reply all
Reply to author
Forward
0 new messages