PDA

View Full Version : Imsai FIF FDC project



jhalbrecht
July 29th, 2018, 05:09 PM
I recently acquired another set of Imsai Calcomp drives and a two board set of an FIF FDC consisting of the FIB and IFM cards as well as all necessary cabling - between the cards, card to rear panel and a ribbon cable from the back of the Imsai to the drive enclosure. I spent a good part of today enhancing my Imsai 8080 (https://wiki.theretrowagon.com/wiki/Imsai_8080) page with resources manuals and a couple more images. Trying to gather as much information in one spot.

I call this "The Money Shot" as in way too much money spent on old timey computers I really wanted that FIF set though.

47023

Hamlin 7521d Solid State Relay

47025

I opened up the FDD cabinet and noticed this relay. It's obviously added by a user, I'm wondering if anyone might have an idea why? My guess was to control it remotely perhaps from the computer? Like a tape drive control on a Sol-20... Note the ends of the brown and tan wires on the VDC side. I don't like that they apparently swapped HOT and Neutral between the power cord and power supplies. I'm going to bypass it but I'm curious.

glitch
July 30th, 2018, 06:21 AM
I wouldn't be surprised if the relay is to cut out the spindle motors on the 8" drives. I've got a set of RX02 drives modified with just a mechanical switch to cut out the spindle motors on one or both drives. Presumably someone was worried about having a disk spun up for hours when there was no actual data access happening. Presumably your Calcomp drives have head load solenoids so it wouldn't be as bad as leaving, say, 5.25" drives with no head load solenoids running long-term, but perhaps there's added wear on the disk from just spinning in the jacket.

Chuck(G)
July 30th, 2018, 07:19 AM
Yes, the Calcomp drives used in the IMSAI box have head-load solenoids. Not my favorite drives by a long shot--one nasty is that the DC power is on the same 40 pin connector as the signal lines. Stick the connector in "backwards" and you have (a) melted ribbon cable or (b) blown power supply fuse. In comparison to the Shugart SA800, the drives always felt a little chintzy.

jhalbrecht
July 30th, 2018, 03:21 PM
Blam goes the Tantalum C21 on the IFM Rev 6 board. I don't have any schematics for the IFM or the FIB boards. Has anyone seen schematics for these boards?

C21 goes from ground to the input of a 7812. of the three or four capacitors there I can read they say 33 25v. I see a .1uf on the input of a 7812 on the MPU-A board. I probably should change them all. Suggestions for value?

47040

jhalbrecht
July 30th, 2018, 03:27 PM
I wouldn't be surprised if the relay is to cut out the spindle motors on the 8" drives.

The relay is on the entire primary to the power supply.

Check this out on the IFM board I found a place where those relay wires must have gone.

47041

jhalbrecht
August 4th, 2018, 09:51 AM
I recently acquired another set of Imsai Calcomp drives and a two board set of an FIF FDC...

To recap. I'm attempting to restore this Imsai with Calcomp drives to functionality. The Imsai 8080 and Imsai FDDs look to have been a working set. All the cards had necessary internal and external cables.

I'm working on the SIO now. I'm going to need a console. I'd like to document it's original, or as received, configuration. I've saved images of all the cards as received here. (https://wiki.theretrowagon.com/wiki/Imsai_8080#FIF_.2F_VIO_evaluation_-_restoration)

I'm hoping someone comfortable with the SIO jumper settings can verify how the SIO is currently configured. I've read the manual a couple times. It looks to me like it's configured as RS-232 on I/O port 0 at 1200 baud on the left side edge connector. Looks like the other edge connector baud rate is not set. Eventually I'd like to verify this as console setup or reconfigure as such.

47125 High resolution image of this SIO here (image)

I'm not positive about location A3 pins 7,8,9 and 10. Is that just choosing DCE / DTE? My SIO has A3 pin 7-9 and 8-10 crossed, the example jumpers have them straight 7-10 and 8-9

47123

I fired up the Z80 SBC (http://www.s100computers.com/My%20System%20Pages/SBC%20Z80%20Board/SBC%20Z80%20CPU%20Board.htm) I built and ran "Survey" with and without the SIO in the system. It's indicating to me that the SIO is configured at base port 0. Note the DDT run where I IN through the ports and get some data back on a couple of the ports,.

47124

I found a little monitor program by John Garza in hist files section (http://jgarza.sdf.org/files/) (Check out hist pictures directory, some cool shots of his bench(s)) I pulled some code to create a little test. Othere monitors and Imsai documents appear to be pointing to base port 0 for a likely console location Base+2 I'm running this code in the Imsai 8080 with the 8080 cpu and Martin's 88-2SIOJP (https://wiki.theretrowagon.com/wiki/88-2SIOJP) - I'm not doing testing, other than running 'Survey' in the SBC.




; jsio.asm jha 8/2/2018 testing sio
; https://wiki.theretrowagon.com/wiki/Imsai_8080
; from a Monitor program code by John Garza
; http://jgarza.sdf.org/files/M72.ASM

;------------------
;IMSAI 8080 EQUATES

00FF = LEDS equ 0FFh ;IMSAI front panel output LEDs (top left)
00FF = SWCH equ 0FFh ;IMSAI front panel input switches (left)
0003 = TTS equ 03h ;SIO channel A command port
0002 = TTI equ 02h ;SIO channel A data port (yes input=output)
0002 = TTO equ 02h ;SIO channel A data port
0002 = TTYDA equ 02h ;tty data available (ready to receive?)
0001 = TTYTR equ 01h ;tty terminal ready (ready to transmit?)

;------------------
;ASCII characters used

0000 = NUL EQU 0 ; NULL (ZERO)
000D = CR EQU 0DH ; Carriage return
000A = LF EQU 0AH ; Line feed
0008 = CTRH EQU 8 ; Ctl H Backspace
007F = DEL EQU 127 ; Delete char
0009 = TAB EQU 9 ; Tab char
0018 = CTRX EQU 24 ; Ctl X Cancel
0013 = CTRS EQU 19 ; Ctl S Suspend
0011 = CTRQ EQU 17 ; Ctl Q Resume
00F7 = APOS EQU (39-'0') AND 0FFH ;apostrophe

0100 org 0100h
jcot: ; loop printing '7'
0100 DB03 in TTS
0102 E601 ani TTYTR
0104 CA0001 jz jcot
0107 3E25 mvi a,37 ; ASCII 7
0109 D302 out TTO ; Try to print to serial terminal
010B C30001 jmp jcot
010E end



This code loops in jcot: and the jz cot never making it to pc 107. I also tried just writing to port 2 without the status test. Nope.

Does anyone have a know working SIO as a RS-232 device at base port 0? Can you comment and/or share an image of your configuration?

Thanks, - Jeff

jhalbrecht
August 4th, 2018, 11:46 AM
This VCF Forum thread is helpful particularly if you log in so the images display. How to get output from SIO with Intel 8251A USART (http://www.vcfed.org/forum/showthread.php?37137-How-to-get-output-from-SIO-with-Intel-8251A-USART)

jhalbrecht
August 4th, 2018, 01:44 PM
It works! Success.

This code works for me. It echos the keyboard to the screen. I configured the A3 jumpers as in the Imsai documentation. The trick was the software initialization. Now where is channel 1? BASE port + x? I better configure and test it too.


; jsio.asm jha 8/2/2018 testing sio
; https://wiki.theretrowagon.com/wiki/Imsai_8080
; Originally from a Monitor program code by John Garza hence the EQUates
; http://jgarza.sdf.org/files/M72.ASM
;
; Important init code from VCF forums
; handy VCF threads for configuration
; http://www.vcfed.org/forum/showthread.php?64964-Imsai-FIF-FDC-project
; http://www.vcfed.org/forum/showthread.php?37137-How-to-get-output-from-SIO-with-Intel-8251A-USART
;

;------------------
;IMSAI 8080 EQUATES

LEDS equ 0FFh ;IMSAI front panel output LEDs (top left)
SWCH equ 0FFh ;IMSAI front panel input switches (left)
TTS equ 03h ;SIO channel A command port
TTI equ 02h ;SIO channel A data port (yes input=output)
TTO equ 02h ;SIO channel A data port
TTYDA equ 02h ;tty data available (ready to receive?)
TTYTR equ 01h ;tty terminal ready (ready to transmit?)

org 0100h
init:
mvi a,0
out TTS
out TTS
out TTS
mvi a,040h
out TTS
mvi a,04eh ; 8,1,n
out TTS
mvi a,037h
out TTS

inout: ; loop read from serial, write it to serial. Serial terminal echo.
in TTS
ani TTYDA ; DATA available?
jz inout
io1:
in TTS
ani TTYTR ; ready to receive?
jz io1
in TTO ; read character
out TTO ; write
jmp inout ; repeat
end

jhalbrecht
August 4th, 2018, 02:30 PM
It works! Success.

This code works for me. It echos the keyboard to the screen. I configured the A3 jumpers as in the Imsai documentation. The trick was the software initialization. Now where is channel 1? BASE port + x? I better configure and test it too.


I tried it with the A3 jumper in both configurations, it works both way. They change DTR and DSR and may be more important if I try some XMODEM... or need handshaking for a printer or modem...

jhalbrecht
August 4th, 2018, 03:59 PM
Now where is channel 1? BASE port + x? I better configure and test it too.


I found the equate for the second channel, channel B (on the right hand side) just add 2. I put both channel equates in the test code. Comment out the one you're not testing.


; jsio.asm jha 8/2/2018 testing sio
; https://wiki.theretrowagon.com/wiki/Imsai_8080
; Originally from a Monitor program code by John Garza hence the EQUates
; http://jgarza.sdf.org/files/M72.ASM
;
; Important init code from VCF forums
; handy VCF threads for configuration
; http://www.vcfed.org/forum/showthread.php?64964-Imsai-FIF-FDC-project
; http://www.vcfed.org/forum/showthread.php?37137-How-to-get-output-from-SIO-with-Intel-8251A-USART
;
; works with straight through cable
;

;------------------
;IMSAI 8080 EQUATES

LEDS equ 0FFh ;IMSAI front panel output LEDs (top left)
SWCH equ 0FFh ;IMSAI front panel input switches (left)

; channel a
;TTS equ 03h ;SIO channel A command port
;TTI equ 02h ;SIO channel A data port (yes input=output)
;TTO equ 02h ;SIO channel A data port

; channel b
TTS equ 05h ;SIO channel B command port
TTI equ 04h ;SIO channel B data port (yes input=output)
TTO equ 04h ;SIO channel B data port

TTYDA equ 02h ;tty data available (ready to receive?)
TTYTR equ 01h ;tty terminal ready (ready to transmit?)

org 0100h
init:
mvi a,0
out TTS
out TTS
out TTS
mvi a,040h
out TTS
mvi a,04eh ; 8,1,n
out TTS
mvi a,037h
out TTS

inout: ; loop read from serial, write it to serial. Serial terminal echo.
in TTS
ani TTYDA ; DATA available?
jz inout
io1:
in TTS
ani TTYTR ; ready to receive?
jz io1
in TTO ; read character
out TTO ; write
jmp inout ; repeat
end

jhalbrecht
August 17th, 2018, 04:34 PM
I recently acquired another set of Imsai Calcomp drives and a two board set of an FIF FDC consisting of the FIB and IFM cards as well as all necessary cabling ...

I've been messing around for a couple days now just trying to swap in an Adaptec AHA-1542cf into one of two machines I have with ISA 16 bit slots. On a 486 I disabled the FDC with a jumper on the controller. Still the floppy on the AHA-1542 didn't seem to be recognized. I could ^a for the onboard configuration of the AHA-1542.... I also tried another computer with the ISA bus with a BIOS disable of the onboard FDC controller. Still the AHA-1542 FDC didn't work.

Last night I bought a Pentium with one ISA 16 slot from a nearby craigslist sale. and I found a couple more AHA-1542cf's. None of the three Adaptec cards have an Intel FDC so hopefully I'll be good to go for Imagedisk, but I can't seem to get any of these three machines to read floppy disks with the Adaptec after disabling their original FDCs.

I seem to remember using this card for SCSI back in the day. I don't remember any trouble with them.

I have switch 5 set off / open.

Any suggestions? before I post in the PC genre forum?

jhalbrecht
August 17th, 2018, 06:28 PM
I have switch 5 set off / open.


Doh! Completely misread that dip switch! I just booted off of floppy on the AHA-1542! And can read the IDE drive under FreeDOS (http://www.freedos.org/) booted from the 1.44 floppy.

I'll tackle ImageDisk (http://www.classiccmp.org/dunfield/img/index.htm) on the 8" drive in the morning with my FDADAP floppy disk adapter (http://www.dbit.com/fdadap.html). Gee I've only been kicking it around for three years or so ;-)

'night - Jeff

glitch
August 18th, 2018, 08:04 AM
Run TestFDC on the Adaptec card first, not all of them use a FDC chip that will do single-density or 128 byte sectors.

Chuck(G)
August 18th, 2018, 09:16 AM
An FDC chip that can read or write FM will also be 128-byte sector capable. I know of no exceptions.

However, very few PC FDC chips can handle 128-byte MFM sectors. Probably just as well, as there were very few systems that used them. Jade and one of the early Superbrain systems come to mind. When IBM went from FM-128 3740 to MFM-256 System/3 format, they did not include MFM 128 byte in their specs, so naturally most vendors didn't support it.

jhalbrecht
August 18th, 2018, 03:05 PM
Well this is kinda silly... This BIOS is only supporting one Diskette.... Not like it's going to have an entry for 8" floppy though... ;-)

Before attempting to find and write an 8" boot disk for my Imsai FIF project I'll try a proof of concept first if I can find a California Computer Systems (CCS) boot image. I have a working CCS system that I know boots as I have a bootable media....

47440

jhalbrecht
August 20th, 2018, 12:48 PM
Before attempting to find and write an 8" boot disk for my Imsai FIF project I'll try a proof of concept first if I can find a California Computer Systems (CCS) boot image. I have a working CCS system that I know boots as I have a bootable media....


I didn't find a CCS .IMD image but I did find a CompuPro Z80 .IMD boot disk. I successfully wrote it and booted. Imagedisk system is an eight inch Shugart 801 in Problem Solver Systems single drive cabinet on Pentium III. Imagedisk didn't work for me under win98, but I booted to msdos where it worked fine.

4747047471

I found the CompuPro boot .IMD image at Daves Old Computers - Application Software Disks (http://www.classiccmp.org/dunfield/img54306/applic.htm) where I didn't find any Imsai disks. Are there any other treasure troves of .IMD files where I might find an IMDOS or preferably CP/M boot disk for an Imsai with a FIF FDC?

Making progress. - Jeff

jhalbrecht
August 27th, 2018, 08:46 AM
I'm hoping that this thread will eventually lead to a boot from floppy from the CalComp eight inch disk. Meanwhile Some relevant information has come up in a couple other threads. There are a few folks that I wanted input from that don't have accounts here hence some discussion at other forums.

I've placed MEMON80 in eprom and installed it at F800 in a Tanner 64k Static RAM board.


Creating boot media for Imsai FIF project (https://rodaw.me/2PbbgYd) at S100Computers google group.
z80pack IMSAI VIO Techdemo 1 (https://rodaw.me/2BQUdsD) comp.os.cpm


I use MEMON80 to load the mpu-a-monitor.hex found in z80pack... I installed my MIO as the monitor is looking at the keyboard parallel port status to determine which device will be input. Without the MIO you'll get erroneous data from a non existent port... I guess my MIO works too. Although I don't have a parallel keyboard hooked up, yet, no keyboard so keyboard port not ready. Hit space on the SIO serial terminal and the Imsai monitor came up.




IMSAI IEEE MONITOR VERS 1.0
?D F800 F810

F800 F3 AF 57 C3 1F F8 C3 CE FD C3 C3 FD C3 B6 FD C3 ..W.............
F810 D5 .
?


Back to learning how to creat some boot media....

WTB Imsai IKB-1 keyboard.

I have a bunch of keyboards (https://rodaw.me/2NZG5hX) but they aren't Imsai! ;-) and look to be large projects on their own.