This is an archived, read-only copy of the United-TI subforum , including posts and topic from May 2003 to April 2012. If you would like to discuss any of the topics in this forum, you can visit Cemetech's z80 & ez80 Assembly subforum. Some of these topics may also be directly-linked to active Cemetech topics. If you are a Cemetech member with a linked United-TI account, you can link United-TI topics here with your current Cemetech topics.

This forum is locked: you cannot post, reply to, or edit topics. Z80 & 68k Assembly => z80 & ez80 Assembly
Author Message
benryves


Active Member


Joined: 23 Feb 2006
Posts: 564

Posted: 15 Dec 2008 02:45:30 pm    Post subject:

This is something that I've never managed to do. I've successfully used the silent linking protocol to receive screenshots and directory listings, but never actually send variables to the calculator. I've been using the TI-83+ Link Protocol Guide.

Here's a log of trying to send the variable A as per the documentation:

Code:
-> 73 -> C9 -> 0D -> 00 -> 09 -> 00 -> 00 -> 41 -> 00 -> 00 -> 00 -> 00 -> 00 -> 00 -> 00 -> 00 -> 00 -> 4A -> 00
<- 73 <- 56 <- 00 <- 00
...at which point it times out. To get a comparable log I wrote a program to scan the port as TiLP transferred variables and noticed that it used 0x23 as the computer-to-TI-83+ machine ID. I changed it to 0x23 and got a bit further:

Code:
-> 23 -> C9 -> 0D -> 00 -> 09 -> 00 -> 00 -> 41 -> 00 -> 00 -> 00 -> 00 -> 00 -> 00 -> 00 -> 00 -> 00 -> 4A -> 00
<- 73 <- 56 <- 00 <- 00 <- 73 <- 09 <- 0D <- 00
-> 23 -> 56 -> 00 -> 00 -> 23 -> 15 -> 09 -> 00 -> 00 -> 80 -> 12 -> 56 -> 34 -> 78 -> 85 -> 25 -> 55 -> 93 -> 02
...at which point it times out.

Any ideas?
Back to top
brandonw


Advanced Member


Joined: 12 Jan 2007
Posts: 455

Posted: 15 Dec 2008 05:32:12 pm    Post subject:

You can't use machine ID 0x73 with the silent link protocol, or at least you're not supposed to, which is why the first one failed.

I'm not sure why the second would fail. I would try sending a program instead of a REAL variable and see if you can get that to work first.
Back to top
Spencer


Advanced Newbie


Joined: 06 Nov 2005
Posts: 99

Posted: 15 Dec 2008 09:07:36 pm    Post subject:

I set up a similar scenario and your bytes look right on. You should verify your byte level stuff is working, the calc will appear to time out if it hasn't received the full data packet

Here's some pretty clean code for the virtual link:
http://svn.revsoft.org/wabbitem/source/hardware/link.c

link_send sends bytes
link_send_var sends reals

Edit: Fixed link


Last edited by Guest on 16 Dec 2008 05:22:27 pm; edited 1 time in total
Back to top
tr1p1ea


Elite


Joined: 03 Aug 2003
Posts: 870

Posted: 16 Dec 2008 03:41:38 am    Post subject:

* http://svn.revsoft.org/wabbitemu/source/hardware/link.c
Back to top
benryves


Active Member


Joined: 23 Feb 2006
Posts: 564

Posted: 16 Dec 2008 06:49:52 am    Post subject:

Cheers, a lot of clues to where I'm going wrong here. Smile I've tried writing linking software a number of times (in languages from VB6 to C to C#) and only got as far as directory listings or screenshots before hitting the stumbling block of sending variables.

One thing that puzzles me is the TI-83+ responding:

Code:
<- 73 <- 09 <- 0D <- 00

Shouldn't that imply that 0x0D (13) bytes are attached?
Back to top
brandonw


Advanced Member


Joined: 12 Jan 2007
Posts: 455

Posted: 16 Dec 2008 07:48:12 am    Post subject:

No. The OS uses a buffer (equated as "header" in ti83plus.inc) for building these link packets before sending them. The previous packet started out with 0x23 0xC9 0x0D 0x00, and when the OS was preparing to send the "continue" packet, it just stored 0x0973 to (header), and the last two bytes weren't touched (so they remained 0x0D 0x00). The last two bytes in packets without data attached are usually meaningless. You can ignore them.
Back to top
Display posts from previous:   
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
    »
» View previous topic :: View next topic  
Page 1 of 1 » All times are UTC - 5 Hours

 

Advertisement