Login
Back to forumSee the full topicGo to last reply

Posted By

MMS
on 2022-09-20
16:11:27
 Re: External User Port for the C16: Let's make it!

@gerliczer
Nope, I was thinking about the original idea of BSZGG to connect a REAL RS232 PC mouse.
BTW you are right, if you want to read it directly with CPU power, Plus/4 is stucked. Without raster interrupts CPU it too slow, as BSZGG also explains. But using the trigger it may initiate a read sequence on the serial port.

OFF Definitely RS232 mouse worked with Plus/4, but the original resident driver he shared does not fit to the zero page. I wanted a solution does not conflict with other programs or should not take any usable memory. It was a kind of spaghetti code, which did the job, but needed optimalization. I failed to do it, my versions lost with a defective HDD and my notes lost during relocation. So I simply lost my motivation to restart/finish it.
Frankly speaking, doing that bitanging to get the positions and mouse button status is kind of annoying. (I mean the original RS232 mouse protocol, mixing X and Y position bits into one byte...ouch!)
Also closing out the C16 (my main platform) and C116 was a not so nice decision.

But there is a hope now happy
and even better you may not need the external Max232 board, not to mention buying the user port connector.

OK, here is BSZGG's homepage, with the drivers and demo programs:
It really works, I bought few real RS232 mouses to test it.
PS/2 mouses with the RS232 adapters fail to work, as they have different communication modes, and certainly the Plus/4 does not talk with the mouse...
https://amigos.amiga.hu/plus4/plus4/fejlesztesek.htm

and my description. You may find failures with that...
AFAIK my Max232 boards worked in this connection method, but I saw a similar C64 project connected the opposite way.
I bough some user ports, dozens of Dupont cables, RS232 male/male adapters to create some more for others.
[ Plus4 RS232 mouse documentation DRAFT V1.pdf ]

Certainly there should be an agreed memory position for us ("scene"), as resident driver may writes the X and Y position to a certain memory address we may agree (I planned the SPEECH buffer, but finally it became a working option happy )
I even had the idea to use only 0-160 positions only for X, because it would be much simpler to use (certainly not precise enough for HIRES drawing, but OK for multicolor purposes or text editors or games). Also an other X and Y position byte for text mode planned (to be created by the resident program) to extend the possible use of it.
Certainly creating a program on the upper memory and to manage bank switching was far beyond my knowledge, that's why the idea of zero page PRG.

Sorry for the long OFF, but I really spent a lot of hours on that nice project (frankly speaking: very simple compared to this C16 project, especially as BSZGG already made the majority of the job), but my knowledge was really not enough to complete it.
Certainly the C64 1351 mouse may work with the SID card, but the price... 100€ - 200€
(the other C64 mouses are not so compatible with anything else than their own programs - this is what I wanted to prevent with standardization)



Back to top


Copyright © Plus/4 World Team, 2001-2024