Quantcast
Channel: Raspberry Pi Forums
Viewing all articles
Browse latest Browse all 8093

General • Re: RP2350B / Signetics 2650 Retrocomputing Prototype

$
0
0
The main challenge is perhaps RP2 GPIO pins not being "5V tolerant".
Yes - that was a concern. I had read conflicting stories about 5V tolerance on the RP2350B so my initial design used 4 x 8-channel 3.3V <--> 5V level shifting ICs. Nothing worked - It might have just been a bad soldering joint but I decided to simplify the circuit and remove those chips. It would be much less expensive to fry a 5 Euro development board that to spend more of my time on fault analysis. Everything started working so all well and good. I have heard it said that it might only be a problem if you apply power to the peripheral before the RP2350. In my case the RP2350 board is supplying all of the 5V supply so that is not a problem.
Oberon is an interesting choice. Pascal was the teaching language of preference back in my day, a little too early for Modula and Oberon, so I have had little exposure to those. Is the 'S2650 IcePi' source available so people can take a look at it ?
I programmed using the languages FORTRAN IV on an Elliot 903 at school, ALGOL 60 on an ICL1906 at Uni and TASC on a Varian Minicomputer before I was introduced to Pascal on a CDC Cyber when working at Sydney Uni Computing Centre in the 1970's. I was instantly captivated by the concept of recursive data structure definitions. Pascal's quirks irritated me so, again was instantly captivated when I started using Modula-2 in the 80's. Having experienced 10 dismal years of working with C I vowed never to do any serious work with it again so when I started programming microcontrollers in 2007 it was a happy coincidence that Wirth had developed his Arm Oberon compiler. I haven't looked back since. I plan to release the full source of S2650 IcePi sometime this year but here is a sneak peek of the code that does all of the work:

Image

The 2650 Address pins A0..A12 are connected directly to pins GPIO45..GPIO33 on the Olimex PICO2-XL board. As far as the PCB board design layout is concerned these are, very conveniently, contiguous pins on both devices. Unfortunately, they are mapped in reverse order. The Arm Reverse Bit (RBIT) instruction, comes to the rescue here. The line of code that does the mapping is shown here with the very compact and efficient code that the Astrobe compiler generates:

Image

Statistics: Posted by cfbsoftware — Thu May 15, 2025 12:45 am



Viewing all articles
Browse latest Browse all 8093

Trending Articles