Page 1 of 3

ReMPU A1200

Posted: Fri Jun 12, 2020 10:02 pm
by arkadiusz.makarenko
I have decided that I want to start my initial goal why I started looking at micro controllers in the first place.
My MPU in Amiga 1200 died and I was very angry when I did find that replacement cost is £36 plus shipping. And no alternative.

My goal is to make it as cheaply as technically possible. No fancy features just as it is.
My base is stm32f103 (blue pill) - £3 board.

Downside: need to remove keyboard pullups (R621) on A1200, as only half of pins on this MPU are 5V tolerant, and mpu is 3.3V.

Upside: No need for oscillator circuit as mpu has internal HSI is 8Mhz (low precision) ,and very low price (literally few £).

Challenges: Physical installation of stm32 on Amiga1200. I will be using ReAmiga1200 and A500 port to hook up blue pill.
I hope someone might be interested in this task and will solve it. If not there always will be option of blue pill some wires and Amiga keyboard connector.

I will post my progress here and code changes will be published here https://github.com/arkadiuszmakarenko/ReMPU_A1200

Re: ReMPU A1200

Posted: Sat Jun 13, 2020 1:40 am
by Danoo
Nice project :)

Re: ReMPU A1200

Posted: Sun Jun 14, 2020 9:23 pm
by arkadiusz.makarenko
I can read all values from X/Y grid. Still need to test special buttons. Some mappings and stage 1 done.

20200614_211919.jpg
20200614_211919.jpg (288.1 KiB) Viewed 8846 times

Re: ReMPU A1200

Posted: Tue Jun 16, 2020 9:04 am
by neilo40
I'm intrigued :-) I've got a few STM32 projects on the go at the moment (nothing worth sharing at this point - soon!), so I'm familiar with the platform / nucleo / cube etc but I really don't know much about the A1200.

What's the MPU? I'm guessing it's some kind of I/O controller / something to do with the keyboard?

Neil

Re: ReMPU A1200

Posted: Tue Jun 16, 2020 10:45 am
by arkadiusz.makarenko
neilo40 wrote: Tue Jun 16, 2020 9:04 am I'm intrigued :-) I've got a few STM32 projects on the go at the moment (nothing worth sharing at this point - soon!), so I'm familiar with the platform / nucleo / cube etc but I really don't know much about the A1200.

What's the MPU? I'm guessing it's some kind of I/O controller / something to do with the keyboard?

Neil
It is keyboard controller. I guess it is equivalent of Atari 6301, but it is responsible only for keyboard stuff.
I am working on Atari ST USB HID keyboard interface as well, based on 722Z Nucleo board.

Re: ReMPU A1200

Posted: Tue Jun 16, 2020 10:48 pm
by arkadiusz.makarenko
Mapping for most of keys done.
That was dull!

Now I need to implement circular buffer.

Re: ReMPU A1200

Posted: Wed Jun 17, 2020 9:12 pm
by arkadiusz.makarenko
Decided to go for array instead of a buffer, each pass will have new reading and then I will be looking at which are new keypresses and which were released,

So Stage 1 - reading data from keyboard and mapping it to Amiga codes are sort of done.
Time to move on to sending data to Amiga.

Re: ReMPU A1200

Posted: Wed Jun 17, 2020 9:21 pm
by arkadiusz.makarenko
Question is if I need deboucing routine?

Re: ReMPU A1200

Posted: Wed Jun 17, 2020 9:44 pm
by PhilC
arkadiusz.makarenko wrote: Wed Jun 17, 2020 9:21 pm Question is if I need deboucing routine?
You can always program in a debounce and try varying the debounce delay. if you don't need it set it to 0.

Better to add it and not need it than to need it but haven't added it.

Re: ReMPU A1200

Posted: Thu Jun 18, 2020 9:50 pm
by arkadiusz.makarenko
I have done very rough debouncing routine. It just work, good enough for now. It is hard coded for 3 passes each 1ms. I need to make compare of read values more flexible, but this need to wait till I can test how keyboard feels inside real Amiga.

I have started porting data sending routine. 87 errors to fix to go ... one or two evenings to go.