• Please review our updated Terms and Rules here

Intel Intellec 8 MCS

Following up to Herb's post, I'm refurbishing an intellec 4 mod 40 - serial number 027 - from my university studies that had an unfortunate brush with gravity a few years ago.
The metal work is straight again, the case is a colour matched blue repaint job, the power supplies are cooking gently, and a 1702A programmer build is under way.
(More 'new, old stock' 1702A EPROMs sourced from a stash in Sweden. And the potentially 'lethal' exposed mains wiring has been upgraded.)
All I really, really need is a copy of the assembler tape! (Why did I not keep one from my college days, 1974-1977?)
Anybody got any wise words on where to look/whom to ask, please?
 
Following up to Herb's post, I'm refurbishing an intellec 4 mod 40 - serial number 027 - from my university studies that had an unfortunate brush with gravity a few years ago.
The metal work is straight again, the case is a colour matched blue repaint job, the power supplies are cooking gently, and a 1702A programmer build is under way.
(More 'new, old stock' 1702A EPROMs sourced from a stash in Sweden. And the potentially 'lethal' exposed mains wiring has been upgraded.)
All I really, really need is a copy of the assembler tape! (Why did I not keep one from my college days, 1974-1977?)
Anybody got any wise words on where to look/whom to ask, please?
I wonder if the assembler Tom Pittman did for Intel could be modified to run on a 4040. The only issue it might have is that Tom's assembler uses the fact that you can only go 3 levels deep on the return stack before another subroutine will overwrite the tail end of the stack. He uses that to change the program flow after three stack returns. I think he only does that once in the program. There are a large number of 00h locations on the last 256 block of ROM. I suspect one might be able to patch in enough subroutine calls and returns there to overflow the stack to mimic the 4004 behavior. Other than that the rest of the code should work fine on a 4040 machine.
Does the MOD 40 have a RS232 input or is it just TTY. It doesn't take a lot of modification to make a RS232 to TTY converter for a board that just does the lower voltage current loops.
You can then use a PC or such to load and read data. The program expects one to have a tape reader and punch, at 50 baud. The PC can do this but you also need a handshake control from the PC to the MOD40. The program needs to throttle the rate the TTY sends ( look at the MCS4 manual on bitsavers for how that is connected.
How much RAM do you have and how is it mapped. Is it real 4002s or through a 4008/9 or 4289? I don't recall if the program uses the status bits of the 4002s.
You'd also have to modify the assembler to generate the other instructions of the 4040.
Before going too far, I thought the assembler was built into the MOD40.
Anyway, how much RAM and of which type do you have.
Dwight
 
There isn't a lot of source code on the web or 4004 or 4040. There is a piece that the NBS did to calculate delays from satellites. The NPGS school library has the electronic maneuver board code ( I built a board to run this code but it uses 13 each 1702s and 16 each 4002s ). There is also a load calculator for a helicopter list there but it errors out when I try to load it?
It is a shame Intel has lost the user library it had for the 4004/40 and 8008. There may have been some useful nuggets there.
Dwight
 
Aha! It's the classic intellec 4 MOD 40, with a RAM Based assembler.
(I had an ASR33 as an input/output device for a year, then we purchased a paper tape reader that didn't work very well...)
The tape took about half an hour to load via the TTY, and then a further hour or so to process 1K of assembler source code.
Usually spent fussing over the paper tape not getting stuck.
The serial interface is current loop, but I'm working on a simple adaptEr.
The assembler runs from the 4K RAM space and I conjecture keeps symbol table there.
The usual process was kick off the ROM monitor, load the assembler tape, select RAM and reset.
I'm trying to roll my own in native 4040 code and I think that there are a number of design decisions that can be inferred from the 4040 architecture.
Keeping subroutines inside a 256 byte code page being significant.

Here's a link to my copy of the MCS40 Reference card. I scanned it, and Herb was good enough to put it on his website.


The intellec 4 manual (page 2) mentions the tape.


Bonhams auctioneers sold a full system back in 2018 - with tapes - and I've fired an email in their direction to see if the purchaser might care to join the discussion.

Thanks for the reply!

Regards

Sid
 
pvu20Cql.jpg


There was one 74H04 chip in the baud rate generator circuit on the I/O-board that didn't work well and then I needed to design a current loop adapter. But after all this my Intellec 8/80 happily responded with the "8080 V4.0" greeting and a "."-prompt. Yay!
 
dn6nuMml.jpg



Today I finally got Microchess by Peter Jennings running on the Intellec 8/80. Peter Jennings has written a bit of the history behind Microchess here. To get there I created a small device that emulated a paper tape reader. Whenever the reader run signal is activated by the Intellec 8 a menu will be displayed on the attached terminal and the user can the select a file to upload to the Intellec. I also needed to create IO routines for the Intellec 8/80 to work with Microchess. I had som setbacks since it took a while to figure out that nothing worked properly due to four bad 2102 RAM chips. Thanks to Udo Munk that has typed in the hex-code for Microchess so I could work with a file instead of having to type it in. Udos work can be found here: https://github.com/udo-munk/z80pack
 
Forgot to mention that I found bugs in the monitor that was installed in the machine when I got it. At least I think it is bugs.

Original code:

Code:
RI:   PUSH H        ;3EB7-E5
      LXI H,IOBYTE  ;3EB8-21 03 00
      MOVA,M        ;3EBB-7E
      ANI 00CH      ;3EBC-E6 0C
      JNZ RI3       ;3EBE-C2 E4 3E
      MVI A,HT      ;3EC1-3E 09
      OUT TTYS      ;3EC3-D3 01

RI0:  MVI A,BS      ;3EC5-3E 08
      OUT TTYS      ;3EC7-D3 01
      MVI H,0FFH    ;3EC9-26 FF
      ANI 001H      ;3ECB-E6 01
      JZ RI2        ;3ECD-CA DE 3E
      CALL DELAY    ;3ED0-CD 37 3D
      CALL DELAY    ;3ED3-CD 37 3D
      DCR H         ;3ED6-25
      JNZ RI0       ;3ED7-C2 C5 3E

RI1:  XRA A         ;3EDA-AF
      STC           ;3EDB-37
      POP H         ;3EDC-E1
      RET           ;3EDD-C9

RI2:  IN TTYD       ;3EDE-DB 00
      CMA           ;3EE0-2F
      ORA A         ;3EE1-B7
      POP H         ;3EE2-E1
      RET           ;3EE3-C9

The problem is that it never reads from the status port, TTYS to read if a character has been received. It still does the AND-operation to mask all bits but but the first, but since we just recently moved 08H into A then the JZ RI2 always should be taken unless I misunderstand 8080 assembly language completely. Another strange thing is that if the JZ RI2 would not be taken it would repeatedly reset the loop counter H to 0FFH and won't be able to leave the loop. Besides this I couldn't figure out why it needed two calls to the delay subroutine. Each delay would be around 1 ms giving a total delay of 500 ms. More than needed for a 110 bps TTY to deliver the character.

I patched up the code with this small patch which worked just fine. The section from RI1 and forward left unchanged:


Code:
RI:   PUSH H        ;3EB7-E5         
      LXI H,IOBYTE  ;3EB8-21 03 00
      MOV A,M       ;3EBB-7E
      ANI 00CH      ;3EBC-E6 0C
      JNZ RI3       ;3EBE-C2 E4 3E
      MVI A,HT      ;3EC1-3E 09
      OUT TTYS      ;3EC3-D3 01     
      MVI A,BS      ;3EC5-3E 08
      OUT TTYS      ;3EC7-D3 01     
      MVI H,0FFH    ;3EC9-26 FF
RI0:  IN TTYS       ;3ECB-DB 01
      ANI 001H      ;3ECD-E6 01     
      JZ RI2        ;3ECF-CA DE 3E   
      NOP           ;3ED2-00
      CALL DELAY    ;3ED3-CD 37 3D
      DCR H         ;3ED6-25
      JNZ RI0       ;3ED7-C2 CB 3E

This is also very similar how the code looks like in Version 3 of the monitor so I wonder why it has changed?
 

I am now finished with the Intellec 8 project. I have connected the second I/O card to a Facit 4021 paper tape reader and a Facit 4070 paper tape punch. Some small adaptations to the monitor was necessary.

Then I modified Microchess by Peter Jennings to run on the Intellec 8. Whenever I feel like playing a nice game of chess I could just put the paper tape into the reader and load it. Perhaps one day have a game between the PDP-8 running CHECKMO-II and the Intellec 8?
 
As a follow up to this thread. There was discussion about floppy controllers for the intellec 80. After my correspondence with Mattis, I found this reference on the Web:


iCom produced a stand-alone floppy controller in in the era, and designed a number of interfaces to it for systems of the era. This was like Torode's floppy controller with its interfaces, in production they were mostly to the Altair bus, and in development to whatever Kildall used for CP/M initial development. As my first-floppy Web page says, this was a common strategy in the mini/micro computer era. I show a few other such products on that Web page.


My guess is, the iCom also performs some kind of DMA thru its bus interface.

Fast data transfer was hard work to do in 1974 or so, for either minicomputers or microprocessors, which is why grabbing the data and control bus and letting the device controller transfer was how it was done. Things got easier only a few years later., with faster processors and then single-chip floppy controllers.

Regards Herb Johnson
 
A bit of an update on my Intellec 8/80 project.

....

But it was very tricky to reach this board when installed. I needed an extender board. So I sat down a Saturday an draw one in KiCAD. I also added test points so I could attach a logic analyser if it turned out to be necessary. After some delivery time for the PCB and connector I was able to assemble it a few days ago.

....
With this in place it was much easier to debug the frontpanel card. I ordered five boards from JLCPCB (no just HASL, not ENIG, cannot really justify spending the money on something I will most likely use just once) . I have two bare boards left if anyone want just a board. Just need to add a proper connector for it (100 pin, 0.125" division). I'd like 10 Euros for bare board. All the design files and gerbers are on Github: https://github.com/MattisLind/Intellec8

....

Now I could probe around much easier. In run mode it seemed that a lot of signals were toggling. Interestingly the FETCH signal toggled but the LED was not dimly lit. It was all black. It turned out that the OC buffer, A3, a 7417 chip was dead. Replacing that made the front panel a lot happier. Not just the FETCH LED was glowing but everything worked much better. I could toggle in a small loop at address 0 and step through it.

The machine seemed to work. But the monitor startaddress would be at 3800h and there were just nothing valid at all at that address. At least not the same compared with the memory dump I did earlier. I pulled out the EPROM card and immediately saw the SIP-switches. I have had trouble with old DIP-switches not making contact before and sure enough they were several switches that were closed that read open circuit. Trying to exercise them didn't help. Trying deoxit made it worse so I had to replace them. And voila the correct content showed up at adress 3800h.
Wonderful to see these old boxes coming back to life !
When I started with computers they always had a front panel with switches and blinkenlights and you were supposed to know entering programs from there. I somehow miss the blinkenlights...

Around 40 years ago, I saved an Intellec 8-84a from getting scrapped at the university where I worked. Back then it was worthless... and I needed a case for my PC-clone DTC Megaboard, so I converted the Intellec to accommodate my MB. I moved the fan to the top cover and cut a big opening at the left side for the I/O brackets. Fortunately, I didn't throw away the innards, so I still have almost all the parts to restore the old lady.
IntellecFront.jpg
It has the serial number 216, a 220V model (I live in France)
Now that I have retired from work I have lots of spare time and I realize that it would be fantastic if I can bring it back to life. When finished, I'll probably donate the computer to a local computer museum so it will be safe from being scrapped.
I need some help with the smaller details like how to fix the power supplies (I haven't found the smallest parts (screws, brackets for the mounting of the power supplies, etc)
Unfortunately, the controller board for the front panel is in bad shape. Someone needed at 50-point connector back when this computer was worthless and cut off part of the board with a hacksaw...
FP_Contr.jpg
😢
. I have redrawn on paper the traces that are missing, but I'll have to find the best way of repairing the board.


You say that you have built an extender board and maybe have two bare boards left. I would very much like to buy one if you still have them.

Greetings from Brittany, Finn
 
Wonderful to see these old boxes coming back to life !
When I started with computers they always had a front panel with switches and blinkenlights and you were supposed to know entering programs from there. I somehow miss the blinkenlights...

Around 40 years ago, I saved an Intellec 8-84a from getting scrapped at the university where I worked. Back then it was worthless... and I needed a case for my PC-clone DTC Megaboard, so I converted the Intellec to accommodate my MB. I moved the fan to the top cover and cut a big opening at the left side for the I/O brackets. Fortunately, I didn't throw away the innards, so I still have almost all the parts to restore the old lady.
View attachment 1269070
It has the serial number 216, a 220V model (I live in France)
Now that I have retired from work I have lots of spare time and I realize that it would be fantastic if I can bring it back to life. When finished, I'll probably donate the computer to a local computer museum so it will be safe from being scrapped.
I need some help with the smaller details like how to fix the power supplies (I haven't found the smallest parts (screws, brackets for the mounting of the power supplies, etc)
Unfortunately, the controller board for the front panel is in bad shape. Someone needed at 50-point connector back when this computer was worthless and cut off part of the board with a hacksaw...
View attachment 1269080
😢
. I have redrawn on paper the traces that are missing, but I'll have to find the best way of repairing the board.


You say that you have built an extender board and maybe have two bare boards left. I would very much like to buy one if you still have them.

Greetings from Brittany, Finn


Hello Finn!

Sorry for the delay. Didn't see the post until now. Yes I think I have a spare extender board. But it just the PCB. You need to buy the connector and solder on the board yourself as well as all the small test points.

Here is my github repo for the Intellec 8: https://github.com/MattisLind/Intellec8
All the PCB files are there if you want to order it yourself instead.
 
Hello Finn!

Sorry for the delay. Didn't see the post until now. Yes I think I have a spare extender board. But it just the PCB. You need to buy the connector and solder on the board yourself as well as all the small test points.

Here is my github repo for the Intellec 8: https://github.com/MattisLind/Intellec8
All the PCB files are there if you want to order it yourself instead.
Hello Mattis
I would very much like to buy an extender board if you have any left. I already bought the connector (EDAC 346-100-541-202) and soldering is no problem. How shall we proceed (payment, etc.) ?
I tried to mail you at the datormuseum address, but maybe you didn't receive it ?
Greetings from Brittany, Finn
 
Back
Top