Well, what I'll have to do is push AFTER I swap pages so that the saved RAM Bank B value is on RAM Page 3's temporary stack instead of lost out of sight on Page 0's stack. I'll edit this post momentarily when I test the result.
KermMartian wrote:
Well, what I'll have to do is push AFTER I swap pages so that the saved RAM Bank B value is on RAM Page 3's temporary stack instead of lost out of sight on Page 0's stack. I'll edit this post momentarily when I test the result.
Wow, that should have been entirely obvious to all of us. That's just... meh.
I know, it's always that sort of ridiculous silly bug that trips me up, hardly ever huge stuff. Anyway, transmission is working non-crashingly! I'm not happy with the integrity of the data transmitted, but that's for post-AoE worrying. Quick size check:
Code:
Code:
Page 0 is 16242 bytes long (142 bytes to spare)
Page 1 is 16334 bytes long (50 bytes to spare)
Page 2 is 16122 bytes long (262 bytes to spare)
graphmastur wrote:
wow, not much space left. But glad you got the routines to work.
Yeah, interrupt-triggering and sending consumed somewhere between 100 and 150 bytes, leaving me at most 142 to cram in receiving. KermMartian wrote:
graphmastur wrote:
wow, not much space left. But glad you got the routines to work.
Yeah, interrupt-triggering and sending consumed somewhere between 100 and 150 bytes, leaving me at most 142 to cram in receiving.Yeah, so plenty enough. I mean you've already opened both pipes and everything, right?
Yup, all the management is accounted for. I'm looking at about 100 bytes of raw receiving and marshalling code; the only complication will be if the OS insists I do awkward retriggering to receive multiple parts of >64-byte packets.
Hmm, I am curious, I have a wire for our camera that works with the calc too with Ti0Connect and such (USB) will it be possible to use it with gCn? {/dumb question}
What do you mean what it will prove? You've got a USB cable that connects the calc to the computer, that's exactly what this is for.
Shaun, can I send raw frames with your calcout.exe program? IE, is there a way for me to specify values for data to be sent to the calculator? Even if they're untypeable?
merthsoft wrote:
I can add that, if you'd like. How do you want it to be handled?
If it can already accept typing from the user, I can use Alt+Numpad to fake what I want to do; I could just type Alt+001, Alt+000, etc. If not, I'd like to be able to enter a line of hex in the form 00 00 00 00 00 A2 52 7F 4A 90 01 00 01, hit enter, and have that sent as bytes with those values to the calculator. Thanks Merth, you're the best
It can accept typing, so you can try the former thing and hit enter. I'll make it send out the input as hex.
merthsoft wrote:
It can accept typing, so you can try the former thing and hit enter. I'll make it send out the input as hex.
Thanks for making the modifications that I requested, this will definitely help me!
Here's the most recent build:
http://merthsoft.com/calcout.zip
When it gets something from the calc, it prints it out (like before). When you to send something, you type in a hex string. If you want some ascii in there, too, wrap it in [...]. So, e.g., if you type "AA[Shaun]AB" it sends the hex string AA536861756EAB. Also, backspace works in this version
http://merthsoft.com/calcout.zip
When it gets something from the calc, it prints it out (like before). When you to send something, you type in a hex string. If you want some ascii in there, too, wrap it in [...]. So, e.g., if you type "AA[Shaun]AB" it sends the hex string AA536861756EAB. Also, backspace works in this version
Oooooh, that's very helpful, especially considering how many typos I make when I am excited about something and trying to type quickly. Regarding the calculator side, I am trying to piece together the code required in as few bytes as possible. Can I safely assume that a >12 byte packet will always be sent with at least 12 bytes in the first piece, if it has several pieces? In other words, do <=64 bytes always get sent in one chunk, and >64 bytes in at least one 64-byte chunk followed by one or zero chunk of fewer than 64 bytes?
KermMartian wrote:
Oooooh, that's very helpful, especially considering how many typos I make when I am excited about something and trying to type quickly. Regarding the calculator side, I am trying to piece together the code required in as few bytes as possible. Can I safely assume that a >12 byte packet will always be sent with at least 12 bytes in the first piece, if it has several pieces? In other words, do <=64 bytes always get sent in one chunk, and >64 bytes in at least one 64-byte chunk followed by one or zero chunk of fewer than 64 bytes?
I'd say yes but my messing with libticables makes me think there is chance to the contrary. For now assume yes until proof other wise appears. "Always code as if the person who will maintain your code is a maniac serial killer that knows where you live" -Unknown
"If you've done something right no one will know that you've done anything at all" -Futurama
"Have a nice day, or not, the choice is yours." Tom Steiner
<Michael_V> or create a Borg collective and call it The 83+
<Michael_V> Lower your slide cases and prepare to be silent linked. Memory clears are futile.
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
» Go to Registration page
Page 5 of 8
» All times are UTC - 5 Hours
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Advertisement