Jump to content

Use your DS as a keyboard for mIRC


Sintax

Recommended Posts

I whipped up an IRC script so that you can use your DS to chat with (not recieve anything), because keyboards are so last week. Actually I just wanted to have the DS be able to do something with WiFi, I'm chomping at the bit here. Download the script in this archive:

 

http://digitalatrocity.com/DS/script.zip

 

Put it in your mIRC directory and overwrite the old one, or just copy and paste the contents if your script.ini has stuff in it already.

 

Directions:

 

Start mIRC.

Type '/opensocket' to open the socket to listen on port 8888. (No quotes of course)

Type '/setdschannel #somechannel' if you want the text to go to some other channel besides #dsirc (default)

 

Run the WiFi demo on your DS, connect to your AP, and go to the UDP experimenter. Put the IP of your computer in and whatever message you want to send. Hit 'Send' and watch the message magically appear in IRC. Use '/closesocket' to close the socket.

Link to comment
Share on other sites

If you add this, it will send chat from every channel to the DS.

 

on 1:TEXT:*:#:/sockudp ds 192.168.0.9 8888 $chan $nick $1-

 

Just need to change the IP for your DS. Not all messages will be received by the DS, they are just sent blindly and the udp_test client was not designed for chatting.

Edited by Sektor
Link to comment
Share on other sites

oh come on, someone ask me for the lib already and make a real app... I'm including the test app source, it'd be a piece of cake to modify :P

 

-Stephen

 

Actually, yesterday I managed to (almost completely) make a file transfer between pc and ds, writing directly to the GBAMP ;)

I still have some strange problems that probably some sleep will solve... (Like: last datagram's checksum is reported as wrong by the library, and I can't seem to send packets from the DS when I start receiving even if I mostly followed the example code, after the 1st is sent, the other are reported as sent by the ds, but actually they don't get to the wireless card at least looking with ethereal) but this is looking very interesting!

 

By the way, Stephen, what do you think about me releasing this file transfer code when done? Could I release it with source code, or (since I'm mostly following your example) would you prefer for me to wait?

The app will work with ds app and a server side written in java.

 

Bafio

Link to comment
Share on other sites

bafio: I don't really mind if you release it, though you may want to wait for me to finish fixing bugs in the lib... I think there is presently a problem with odd-length packets and the last byte isn't getting copied properly - I will be looking at this in the near future. (this could very easily be your problem)

 

-Stephen

Edited by sgstair
Link to comment
Share on other sites

bafio: I don't really mind if you release it, though you may want to wait for me to finish fixing bugs in the lib... I think there is presently a problem with odd-length packets and the last byte isn't getting copied properly - I will be looking at this in the near future. (this could very easily be your problem)

 

-Stephen

 

Stephen:

That's ok, I think it makes sense to wait, I started working on it yesterday, and still it's missing most of the error control code... Actually that may be the case, all the packet data is 1024 bytes long, but for the last packet that can be any <=1024 size so 50% chance it's odd sized!.

 

This is open to anybody willing to help...

I know there is meant to be no support on this release, so Stephen can skip this part :P

 

It is really strange though I can't seem to receive the packets I send from the ds, my trivial protocol is:

server <-> client

 

receive() <- send(get filename)

 

loop:

 

send(data) -> receive() and write to gbmap

 

receive() <- send(ok)

(here receive has a timeout, so the app works going continuously int timeout (110 ms))

 

in the client the loop is waiting for data and sends ok when the data is received.

Anyway, I will further investigate on this, maybe i set up something incorrectly, I tried adding some waitVbls, maybe is writing to the gbamp that messes up...

 

That's all, thanks again to Stephen for the great work, I hope to be able to fix this soon, and complete it...

 

Bafio

Link to comment
Share on other sites

Nice, saves me doing it :P

 

If you add this, it will send chat from every channel to the DS.

 

on 1:TEXT:*:#:/sockudp ds 192.168.0.9 8888 $chan $nick $1-

 

Just need to change the IP for your DS.

 

Can you detail the operation please ?

Does we have to add

 

on 1:TEXT:*:#:/sockudp ds 192.168.0.9 8888 $chan $nick $1-

 

at the end oh the script from Sintax ?

 

Thank you

Link to comment
Share on other sites

  • 2 weeks later...

I don't think I'll make a version with the lib, because this was only something I made working within the limits that I had at the time. It would be silly with the whole lib at my disposal, the closest thing that I have thought of is an actual IRC client. Sgstair has he was making one as the demo app, but I'm not sure if that's still the case.

 

And if you're using your card as an AP, you still might be able to connect to the internet with your DS and try it out. As long as your computer and DS are connected to the net, it'll work.

Edited by Sintax
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...