|
Post by Leif Bloomquist on Jan 10, 2007 0:06:44 GMT -5
Hi all, Finished version 0.003. Still very preliminary, but actually playable now. Basically, everything is new and improved so I won't list all the changes. Major changes though, it now uses the latest version of Six's netlib, and has a checksum byte on all packets. home.ica.net/~leifb/commodore/duel/Source snapshot will be posted in a couple of days.
|
|
|
Post by Leif Bloomquist on Jan 12, 2007 10:58:11 GMT -5
Hello? Hello? Is this thing on... Funny how I've gotten more response on all the other forums, while this is the"official" one I now have two RR-Nets to test with (thanks Macbeth for the loan!!) and have my C64 and SX64 playing each other. Found a couple of minor bugs already, so there will be a new version soon. But it's cool how well the two systems are synchronized on a LAN - no noticeable lag at all. For those who are trying it, here's some debugging detail. The lines at the top of the screen are the joystick and network IRQ. So when the border flashes white, that's it parsing through a received packet. Note that it has to read all broadcast packets too, so you'll see those from other machines. Shouldn't hurt anything though. The comms character has these colors: Grey - No activity Green - Sending (probably too fast to see) Red - Waiting for ACK after a send. Yellow - Waiting for a packet from the other player. Finally, if you see a multicolor "burst" in the border, that indicated a bad packet (invalid checksum). That's been the biggest problem so far and I wanted it to be _really_ obvious when it happened so I could gauge how frequently it happens. Unfortunately, all the corruption I've seen has happened between the RR-net and C64 itself, not even on the network.
|
|
|
Post by gmoon on Jan 13, 2007 8:50:41 GMT -5
Hello? Hello? Is this thing on... Funny how I've gotten more response on all the other forums, while this is the"official" one Many of us read the posts with fascination , but without networking for our c64s ...
|
|
|
Post by Leif Bloomquist on Jan 14, 2007 20:00:33 GMT -5
Thanks gmoon! Okay, I just updated it to version 0.004. Just a series of small bugfixes - silly things like the chat messages getting uppercase/lowercase swapped. It's also been playtested between two real C64s (actually, a 64C and an SX64) with RR-Nets. Plays quite smoothly. Also...source! As far as I care it's public domain. Six's library (included) is also free to use and distribute. home.ica.net/~leifb/commodore/duel/artillery%20jan-14-2007%200v004.zipEnjoy!
|
|
|
Post by expertsetup on Jan 14, 2007 21:31:30 GMT -5
This has been giving me the itch to get my 64 on the net for a while now . Thanks for the great project and for the great showcase!
|
|
|
Post by Leif Bloomquist on Jan 15, 2007 11:48:12 GMT -5
Unfortunately, RR-nets are out of stock, and the new Net64 cartridge (like an RR-net but standalone) will be a little longer yet.
|
|
|
Post by RaveGuru on Jan 15, 2007 15:36:23 GMT -5
Congrats on the 0.004 release! Hey, you can turn off the reception of broad and multicast frames in cs8900a. This is really useful on busy LANs. Unless you absolutely need to receive broad/multicast all the time of course
|
|
|
Post by Leif Bloomquist on Jan 15, 2007 20:05:18 GMT -5
I'm going to be making lots of little upgrades in the next while (we have nice cold weather in Canada finally, so I can justify sitting inside 'playing' on my C64 ) No need to make a big deal of each release. Maybe when I get closer to an integer Won't I need to keep receiving broadcast frames for ARP though? I think some devices (routers etc.) refresh their ARP table every 5 minutes or so, so I would have to keep it active. Or is there more to it?
|
|
|
Post by Leif Bloomquist on Jan 15, 2007 21:54:38 GMT -5
Quick update. The game version is the same, but it's now packaged in a D64 file. Also, there is a program on the disk called CONFIGURE that lets you enter new network settings and save them.
|
|
|
Post by thurstan on Jan 16, 2007 5:51:41 GMT -5
Now that is a good improvement!
|
|
|
Post by Leif Bloomquist on Jan 21, 2007 20:46:02 GMT -5
Another tiny update. D64 now includes brief instructions. Game is the same though!
|
|
|
Post by expertsetup on Feb 8, 2007 6:01:37 GMT -5
Any chance that this can work with the TFE diy network cart?
|
|
|
Post by Leif Bloomquist on Feb 8, 2007 8:52:01 GMT -5
|
|
|
Post by dthartman on Feb 23, 2007 15:04:42 GMT -5
I think it is great that the scene has such dedicated and talented Commodore 64 developers. I really want to get a RR-Net Bundle, or just the RR-Net to use for the new IDE64 v4 card, since it will have an Amiga clock port. That would be excellent. It seems that the goal of ide64.org is to marry the hard drive interface with a network card adapter, which is really a great idea, since not everyone can find a CMD EX2+1/EX3, Aprospand 64, or other port expander that allows mutiple carts to be used simulataneous, i.e. CMD Turbo232/Swiftlink and IDE64 v3.4 for example. You guys are laying down the groundwork and developing a framework for designing/developing network games for the Commodore 64 that will be supported by the hardware that is available these days. Kudos. Amazing work guys. How hard is it to implement a TCP/IP stack in games? I noticed that you are using UDP right now instead of TCP for slinging packets around. Is TCP support in the plans for future development? Maybe, when the IDE64 v4 is released, or I get a RR-Net Bundle, I can play with these cool programs. I should never have sold my IDE64 v3.4 card with the 1541 CD-HD (6 GB) drive I built, based on Jeff Ledger's design using an ATX power supply, and some parts from an old PC. Anyone know when RR-Net Bundles are going to be available for the general public again? Dave www.retrogradebbs.comCheck out my projects on this web site too. Lots of good info!
|
|
|
Post by Leif Bloomquist on Feb 24, 2007 14:37:43 GMT -5
TCP is achievable, and Six is working on it, but it's really not needed for a lot of C64 apps. UDP is lightweight and easier to work with.
TCP has been done on the C64 (i.e. in Contiki), but that was written in C not assembler...
Have a look through my source code to see how easy it is to internet-enable a game (thanks to Six's netlib). The main issue is finding memory for your packets buffers and so on.
But really, once you've set up the destination addresses and so on, you just copy the bytes to send into an area of memory and to JSR UDP_SEND. Then on the other end just set a flag when the packet appears and read it from the receive buffer.
|
|