What's the state of play with serial port support?

Chat about anything CX16 related that doesn't fit elsewhere
iljitsch
Posts: 25
Joined: Thu May 27, 2021 4:38 pm

What's the state of play with serial port support?

Post by iljitsch »


I remember that the C64 could do 2400 BPS bit banging the user port. The X16 is 8 x faster, so that should translate into 19200 (and the fact that the VIC-II isn't there to steal 1/8th of memory cycles when drawing the screen should make that easier). So that's not entirely pathetic, but you'd still need a special connector and some electronics to boost the TTL signal to RS232 levels.

All simple enough, but still an important barrier that will make sure that only a small minority of users will ever use this.

We'll see how this works out in practice.

BruceMcF
Posts: 1336
Joined: Fri Jul 03, 2020 4:27 am

What's the state of play with serial port support?

Post by BruceMcF »



13 hours ago, ZeroByte said:




Yaknow, a user port device that presents  the X16 file system as a USB stick would be cool. Run a bridging application on the X16 and then just drag and drop files on your PC.



If the RPi pico can be a USB master, it seems like it should be able to be a smart USB peripheral, so once a UserPort parallel protocol is working between the Pico and the CX16, it seems doable by that route.

But a widget that presents a USB flash stick as Device #11, with the right Kernel API support, that'd do me.

BruceMcF
Posts: 1336
Joined: Fri Jul 03, 2020 4:27 am

What's the state of play with serial port support?

Post by BruceMcF »



12 hours ago, iljitsch said:




I remember that the C64 could do 2400 BPS bit banging the user port. The X16 is 8 x faster, so that should translate into 19200 (and the fact that the VIC-II isn't there to steal 1/8th of memory cycles when drawing the screen should make that easier). So that's not entirely pathetic, but you'd still need a special connector and some electronics to boost the TTL signal to RS232 levels.



All simple enough, but still an important barrier that will make sure that only a small minority of users will ever use this.



We'll see how this works out in practice.



I don't see that "tick the serial user port option" on the CX16 order would be an important barrier. Nor a similar "tick the parallel user port option". So I think that is a preventable or fixable problem. (depending, respectively, on whether they do that from the outset or figure out that they should do that as they go). 

IIRC, translating voltage between +5V and +12V is real easy when you have a +12v rail. You only need that MAX chip that charges capacitors up to 12V if you don't have a 12V power supply available.

TomXP411
Posts: 1783
Joined: Tue May 19, 2020 8:49 pm

What's the state of play with serial port support?

Post by TomXP411 »



14 hours ago, Lorin Millsap said:






A user port certainly is a serial port. What we aren’t including is a UART or a modem which would allow faster transfers. The user port could also certainly be used as a parallel transfer instead of serial, so with the right interface you could still get respectable speeds.





Sent from my iPhone using Tapatalk



 

FYI: I've already done some simulations in the emulator, and I can send around 750 bytes a second in BASIC using raw transfer routines in the 6522. (ie: Set the data lines and cycle the clock line using POKE statements.)

In assembly language, if we send one byte per 100 clock cycles, which is totally reasonable, we should be able to send 80KBps. So if we were to integrate parallel I/O routines into the KERNAL, it's possible that using a PC, Pi, or Arduino for file storage would actually be faster than the internal SD card. 

 

Post Reply