ALTAIRZ80: Adds JAIR devices to simulator
Josh's Altair/IMSAI Replacement (JAIR) is a single board computer (SBC) for the S100 bus. I created this device to assist a friend with getting IMP and CBBS working on his JAIR. Without having a JAIR myself, AltairZ80 to the rescue! The following devices are added: JAIR - The main JAIR board I/O and ROM JAIRS0 - Serial Port 0 (COM1) JAIRS1 - Serial Port 1 (COM2) JAIRP - Parallel Port This was a bit challenging because the JAIR uses an on-board SD card with FAT file system to hold its BIOS and CP/M disk images. The ATTACH command is used to mount SD card images to the simulator. The simulator emulates the SD card interface for read/writing SD card sectors. These images are easily mounted on a Mac making moving files around easy. I do not know about Windows. These same images can be written to an SD card and used with real JAIR hardware, which may be useful for JAIR owners. The serial and parallel ports fully support TMXR. Host serial ports and sockets may be attached to these devices. I am working on a GitHub repository containing an SD card image and init script that will boot CP/M 2.2 on the JAIR simulator. Is this device one that should be added to AltairZ80?
This commit is contained in:
parent
560f30d144
commit
3b4333dfcc
6 changed files with 1832 additions and 1 deletions
|
@ -18,6 +18,7 @@ add_simulator(altairz80
|
||||||
SOURCES
|
SOURCES
|
||||||
altairz80_cpu.c
|
altairz80_cpu.c
|
||||||
altairz80_cpu_nommu.c
|
altairz80_cpu_nommu.c
|
||||||
|
s100_jair.c
|
||||||
sol20.c
|
sol20.c
|
||||||
s100_vdm1.c
|
s100_vdm1.c
|
||||||
mmd.c
|
mmd.c
|
||||||
|
|
|
@ -79,6 +79,10 @@ extern DEVICE m2sio0_dev;
|
||||||
extern DEVICE m2sio1_dev;
|
extern DEVICE m2sio1_dev;
|
||||||
extern DEVICE pmmi_dev;
|
extern DEVICE pmmi_dev;
|
||||||
extern DEVICE hayes_dev;
|
extern DEVICE hayes_dev;
|
||||||
|
extern DEVICE jair_dev;
|
||||||
|
extern DEVICE jairs0_dev;
|
||||||
|
extern DEVICE jairs1_dev;
|
||||||
|
extern DEVICE jairp_dev;
|
||||||
extern DEVICE mmd_dev;
|
extern DEVICE mmd_dev;
|
||||||
extern DEVICE mmdm_dev;
|
extern DEVICE mmdm_dev;
|
||||||
extern DEVICE sol20_dev;
|
extern DEVICE sol20_dev;
|
||||||
|
@ -171,6 +175,11 @@ DEVICE *sim_devices[] = {
|
||||||
&pmmi_dev,
|
&pmmi_dev,
|
||||||
/* HAYES MODEM */
|
/* HAYES MODEM */
|
||||||
&hayes_dev,
|
&hayes_dev,
|
||||||
|
/* JAIR SBC */
|
||||||
|
&jair_dev,
|
||||||
|
&jairs0_dev,
|
||||||
|
&jairs1_dev,
|
||||||
|
&jairp_dev,
|
||||||
/* Vector Graphic Devices */
|
/* Vector Graphic Devices */
|
||||||
&fw2_dev, &vfdhd_dev,
|
&fw2_dev, &vfdhd_dev,
|
||||||
/* Single-Board Computers */
|
/* Single-Board Computers */
|
||||||
|
|
1815
AltairZ80/s100_jair.c
Normal file
1815
AltairZ80/s100_jair.c
Normal file
File diff suppressed because it is too large
Load diff
|
@ -366,6 +366,10 @@
|
||||||
RelativePath="..\AltairZ80\s100_jadedd.c"
|
RelativePath="..\AltairZ80\s100_jadedd.c"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\AltairZ80\s100_jair.c"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\AltairZ80\s100_mdriveh.c"
|
RelativePath="..\AltairZ80\s100_mdriveh.c"
|
||||||
>
|
>
|
||||||
|
|
|
@ -281,6 +281,7 @@
|
||||||
<ClCompile Include="..\AltairZ80\s100_icom.c" />
|
<ClCompile Include="..\AltairZ80\s100_icom.c" />
|
||||||
<ClCompile Include="..\AltairZ80\s100_if3.c" />
|
<ClCompile Include="..\AltairZ80\s100_if3.c" />
|
||||||
<ClCompile Include="..\AltairZ80\s100_jadedd.c" />
|
<ClCompile Include="..\AltairZ80\s100_jadedd.c" />
|
||||||
|
<ClCompile Include="..\AltairZ80\s100_jair.c" />
|
||||||
<ClCompile Include="..\AltairZ80\s100_mdriveh.c" />
|
<ClCompile Include="..\AltairZ80\s100_mdriveh.c" />
|
||||||
<ClCompile Include="..\AltairZ80\s100_mdsa.c" />
|
<ClCompile Include="..\AltairZ80\s100_mdsa.c" />
|
||||||
<ClCompile Include="..\AltairZ80\s100_mdsad.c" />
|
<ClCompile Include="..\AltairZ80\s100_mdsad.c" />
|
||||||
|
|
1
makefile
1
makefile
|
@ -1894,6 +1894,7 @@ ALTAIR_OPT = -I ${ALTAIRD}
|
||||||
|
|
||||||
ALTAIRZ80D = ${SIMHD}/AltairZ80
|
ALTAIRZ80D = ${SIMHD}/AltairZ80
|
||||||
ALTAIRZ80 = ${ALTAIRZ80D}/altairz80_cpu.c ${ALTAIRZ80D}/altairz80_cpu_nommu.c \
|
ALTAIRZ80 = ${ALTAIRZ80D}/altairz80_cpu.c ${ALTAIRZ80D}/altairz80_cpu_nommu.c \
|
||||||
|
${ALTAIRZ80D}/s100_jair.c \
|
||||||
${ALTAIRZ80D}/sol20.c \
|
${ALTAIRZ80D}/sol20.c \
|
||||||
${ALTAIRZ80D}/s100_vdm1.c \
|
${ALTAIRZ80D}/s100_vdm1.c \
|
||||||
${ALTAIRZ80D}/mmd.c \
|
${ALTAIRZ80D}/mmd.c \
|
||||||
|
|
Loading…
Add table
Reference in a new issue