Thursday, December 12, 2024

2310 Disk power SMS card inserted into 1130; FPGA bitstream Virtual 2315 Cartridge Facility ready for testing

SMS POWER CARDS REQUIRE CHAMFERING OF LEADING EDGE TO INSERT PROPERLY

My design for SMS power cards to route the AC and certain other voltages to certain IBM 1130 system peripherals is in place and the drive blower motor is spinning up when system power is applied. The devices that use these cards are the internal 2310 disk drive, the 1053 console printer (typewriter), the 1627 plotter, the 1134 paper tape reader and the 1055 paper tape punch. All other peripherals receive power through the large IO cables that link them to the 1130. 

The card is .004" thicker than the IBM cards, which is just enough to make insertion of the card almost impossible. It is the cumulative friction pressure of the contacts across the 16 possible contact positions of an SMS card that lead to the difficulties. Because the contacts are spring loaded they would allow the card to fit were it not for the pressure required to get it started moving into the slot.

I used a rasp to chamfer the backside of the card at the edges that enter the card slots. It didn't take much material removal before I could press the card into the slot successfully. I will release the design of the cards on github allowing others to build them for various devices connecting into the 1130 system. The material of the IBM cards is fragile enough that these are often snapped off. 

FINALIZED GENERATION OF FPGA BITSTREAM FOR MODIFIED RK-05 EMULATOR BOX

I carefully updated the constraints file to ensure that all the signals were linked to the proper FPGA input/output pins. The original RK-05 Emulator developed by George Wiley uses signal names appropriate to the DEC RK-05 drives but I needed a different set of signals for my plans to support the IBM 2310 disk drive. 

I have a clean synthesis, placement, routing and bitstream generation of my design. This file can be downloaded into the RK-05 Emulator box, into the Lattice ICE40 FPGA contained in the box. 

WORKING ON COMPILATION OF THE C CODE FOR RASPBERRY PI PICO

The other active element in the RK-05 Emulator is a RPi Pico processor that runs code to interface with a microSD card, an LCD display and various lights and switches. It also links to the FPGA using an SPI link. The virtual 2315 disk cartridge is a roughly 1MB file on the microSD card inserted into the emulator box. When the Load/Unload switch is turned to Load, the Pico code reads in the file and writes its contents over SPI to the DRAM used by the FPGA for disk emulation. That switch, on the original RK-05 Emulator, is labeled Run/Unload but the function is modified in my design. 

Once the image is downloaded into the DRAM, the FPGA is informed that it has a valid image and can now act as a 2310 disk drive. The normal mode for my facility is to insert a dummy 2315 cartridge (an actual cartridge but the disk heads will not be loaded thus its real contents are ignored). When the Run switch on the IBM 1130 is activated, the 2310 drive spins up and eventually believes it has loaded the heads on the drive. This causes the File Ready lamp on the 1130 to illuminate and input-output can commence. 

When the Run switch on the 1130 is turned off, the real cartridge slows down and stops, meanwhile the Virtual 2315 Cartridge Facility code in the Pico will pull the image from the DRAM over the SPI link. This is written back to the file image on the microSD card, thus preserving all the changes written to the virtual disk cartridge while the 1130 system was accessing it. 

I have to put the C files onto a Pico system, compile the code, then perform testing to be comfortable that it will work properly with the FPGA. When that is complete, the code is loaded onto the Pico and the Virtual 2315 Cartridge Facility will be ready to test with the IBM 1130. 

No comments:

Post a Comment