|
Post by atolle on Mar 5, 2006 18:00:08 GMT -5
Ok, here's the deal. I'm using WinVICE as a platform for testing the new version of Color 64. What I would like to do is get the ACIA emulation working with tcpser4j.
I've went as far as setting the BPS down to 2400 and it still doesn't seem to be working right... it looks like tcpser is getting the AT commands (they show up in the debug window), but the responses aren't getting back to VICE machine.
Has anyone managed to get this to work? If so what is the highest data rate? It seems like it should be possible.
|
|
|
Post by atolle on Mar 6, 2006 15:07:53 GMT -5
Well I got an idea... I'm gonna take a crack at eliminating the middle-man and integrating tcpser *into* WinVICE. Thus, the virtual computer will have a built-in virtual modem listening on a TCP port.
Hopefully it should be possible to connect the ACIA emulation of WinVICE to the serial portion of tcpser.
It will probably end up being an ugly hack but I believe it could be darn useful (for me anyway).
|
|
|
Post by atolle on Mar 6, 2006 18:50:51 GMT -5
Hmmmm... I'm looking at the VICE ACIA code and I can already see problems. This might be salvagable while still being able to use tcpser4j.
Basically the current code appears to have no handling for the DCD or CTS/RTS. The latter is the most important because it means that interrupts could be generated when the system isn't expecting it. Of course, I think in the past you had to depend on the remote RS232 device honoring the hardware flow control, but since we're not even using a real RS232 port we could pretend it is.
The other thing is the ACIA timer settings are calculated completely wrong. To determine how often it should check for byte of input data, it takes the machine's cycles-per-second and divides it by the current *bits* per second. This is wrong since the true ACIA generates an interrupt when a whole *byte* is received. Therefore, it should calculate it as (machine cycles-per-sec) / (bits-per-sec / 10). I use 10 because I'm going to assume the system is using 8 bits, no parity, and one stop bit. There is always 1 start bit so that is 10 bits total.
The ACIA timing table also appears to have the values for a stock ACIA, rather than the doubled values for the SwiftLink or Turbo232.
I think the timing table is just a guidline anyway since all it is doing is basically using an alarm to keep the data from coming into the machine any faster than it can handle. It is sending it way to fast though. Basically 10 times faster than the machine would be expecting it.
Since there is no way to communicate DTR/DCD info via telnet I'm going to have to figure out some way to trigger the DCD bit since Color 64 works best when DCD accurately represents the carrier status.
|
|
|
Post by atolle on Mar 6, 2006 18:57:16 GMT -5
Oops, I was wrong... the code was honoring the RTS setting but data was being lost because the code clears the input bit on every pass of the alarm. If the machine hasn't read it yet, it is lost.
|
|
|
Post by Golan Klinger on Mar 7, 2006 11:18:43 GMT -5
It will probably end up being an ugly hack but I believe it could be darn useful (for me anyway). What is your goal here exactly? It sounds like you want to be able to run a Color 64 BBS from within VICE. Am I close? I first joined these message boards because I was attempting to get a BBS running under VICE (albeit the UNIX version). I never did succeed (fully) but with all the changes to VICE, it's a project I've been meaning to revisit because, ultimately, I would like to run a Color 64 BBS with VICE.
|
|
|
Post by Leif Bloomquist on Mar 7, 2006 11:59:30 GMT -5
ultimately, I would like to run a Color 64 BBS with VICE. Would this be running on your notebook? Carry your BBS with you wherever you go?
|
|
|
Post by Golan Klinger on Mar 7, 2006 15:58:07 GMT -5
Oh, there's an idea. Instead of people connecting to the BBS remotely, I could bring the BBS to them! Seriously though, one of the reasons I was so interested in running a BBS under VICE is that there is the possibility of creating a live, multi-user system by running multiple emulators with BBS software and having them communicate somehow. I thought such a thing might be unique and cool and then Jim resuscitated Quantum Link. Seems kind of pointless now.
|
|
|
Post by Jeff Ledger on Mar 7, 2006 21:08:51 GMT -5
One truth we've learned through TelBBS revival and Qlink is that no matter how cool your software is, it still isn't a success without developing the "community" side. Personally, I think there is still room for more technology (BBSes, etc) but the community aspect needs to be developed for it to be a success. These forums for instance took over a year to pick up enough steam to become an active community.
Jeff
|
|
|
Post by plbyrd on Mar 11, 2006 9:58:40 GMT -5
The community part is very very true. When a new BBS comes online it gets some initial tracktion just from being new, but then it will slow down until a core group of people make it interesting enough to keep others coming back. It's ALWAYS been this way with BBSs.
|
|
|
Post by mrfixit2k on Mar 12, 2006 9:41:33 GMT -5
We all just need to win the lottery and get a divorce then with the free time we have we can spend hours online with the bbs's and working on our pet projects.
|
|