Posts

Showing posts from October, 2024

Bizarre behavior detected in a Raspberry Pi Pico based design and partially understood

ORIENTATION OF THE PRODUCT CAN CAUSE THE PI TO FREEZE AT STARTUP This particular product with a Raspberry Pi Pico would not boot up when sitting flat on the table in its normal orientation, but if tilted or turned it would come right up. When I hooked up a USB serial connection to the debug header, it worked fine even flat on the table.  INVESTIGATION BY DESIGNER AS WELL AS ME I first assumed that I had introduced this problem in the product, but happened to describe it to the maker who was able to reproduce it reliably. I continued to try variations to determine whether it was pressure on a board or component that caused it. I also searched the web for any reports that might cause Pi Picos to fail to boot based on orientation, but found nothing.  The designer found signals introduced on a serial connection trace when sitting in the normal (failing) orientation but not injected when rotated or otherwise turned. Traces were routed from the UART0 on the Pico to a header, for use...

RK-05 emulator kit arriving today - basis of my new disk emulator

 ON THE DELIVERY TRUCK The kit from George Wiley is out for delivery today. All the surface mount components are already assembled thus the assembly of the kit is focused more on connecting boards and setting up the cabinet.  THINKING ABOUT TWO PASS PROJECT I will first assemble it as it was designed and make minor modifications to the code in order to use my Diablo 31 drive to archive various 2315 cartridges in my collection. The Diablo 31, like the RK-05, is derived from the IBM 2310 drive in the 1130 but has an improved but different interface to the controller.  Just as one small example, on the Diablo/RK-05 one can request the drive to move to a specific track and the drive itself manages the movement across as many tracks as are necessary. The 2310 however only moves one or two tracks relative to its current position, either forward or backwards. This is why the changes for the 2310 emulation are more substantial. I have attempted to test them completely in simulati...

Found promising approach to finish my 1130 disk drive emulator project

2310 DISK DRIVE EMULATOR PROJECT GOALS I designed FPGA logic to model the behavior of a 2310 disk drive, the internal disk of the IBM 1130. It uses a single 14" platter inside a disk shaped cartridge holder, inserted into the drive so that the 1130 can boot and access the cartridge. The drive has two heads, one for each side of the platter, which can move radially from near the outside to near the inside of the platter stopping at 203 locations called cylinders. The top or bottom of the platter at a cylinder is called a track.  The drive records a bit over 512K words (16 bit long) on the cartridge, with each of the tracks holding 4 sectors of 321 words. Thus a cylinder holds 2, 568 words. A sector is a quarter pie shaped slice of the disk platter. The data is recorded with four check bits after every word, using an encoding scheme that is kind of like Modified Frequency Modulation (MFM). Each bit cell of 1.39 us duration has a clock pulse in the first half and the second half is t...