Omnimaga

Omnimaga => News => Topic started by: ExtendeD on November 06, 2010, 12:29:43 pm

Title: Ncubate v.0.32b is out
Post by: ExtendeD on November 06, 2010, 12:29:43 pm
Ncubate v032b (http://www.omnimaga.org/index.php?action=downloads;sa=downfile&id=595) is out!

The major feature added in this version is the compatibility with the GNU GDB debugger which allows source-level debugging for C programs. I have been working on this feature for the last 10 months, I am pleased to share it, and hope it will help new TI-Nspire projects to roll out.

Tutorials are available on Hackspire (http://hackspire.unsads.com/wiki/index.php/Debugging_programs) and YouTube (http://www.youtube.com/watch?v=JB-SnyZpbA4).



Thanks to apcalc for BlockDude (http://www.omnimaga.org/index.php?board=128.0) featured in the tutorial.
(sorry for the poor quality, it seems to have been damaged by the YouTube conversion)

This version also includes an ARM loader which can be used by the emulator to run arbitrary ARM instructions. Currently only the GDB support depends on it to speak with the Ndless program loader. I would like to make use of it to add file tranfers to OS 2.1 and also file exports (http://ourl.ca/6959). Unfortunately the file-related syscalls seem to fail for an unknown reason when injecting a call... Any help on this is welcome.

Here is the full changelog of v032b including the minor changes:

* v032b - 2010/11/06
 - ADD: GDB support
 - ADD: Command-line option /R
 - CHG: Read/write breakpoint logs display a virtual address instead of a
   physical address
 - FIX: 'j' (over a non-branch instruction) and 'rs pc' debugger commands
   incorrectly skipped the target instruction
 - FIX: flash file creation (/N) may sometimes fail
 - FIX: no more 'bad read word' on auto power down, but still hangs
 - FIX: ineffective command line option /D when saved state was reloaded on startup
Title: Ncubate v.0.32b is out
Post by: DJ Omnimaga on November 07, 2010, 03:07:19 am
Great! I saw the upload. I will probably give this a try if I ever get into Nspire dev too. :D

EDIT: I moved this to news.
Title: Re: Ncubate v.0.32b is out
Post by: bwang on November 07, 2010, 04:10:37 pm
OMG GDB support!!
Greatest thing ever!!
Title: Re: Ncubate v.0.32b is out
Post by: Munchor on November 08, 2010, 09:32:24 am
Nice emulator, looks hard to use, but that's because you are C Coding.

Can we use ncubate like wabbitemu and code in ti basic nspire too?
Title: Re: Ncubate v.0.32b is out
Post by: ExtendeD on November 08, 2010, 02:16:43 pm
You can code in TI-Nspire basic within the emulator, but currently you will unfortunately not be able to export to the computer the programs written this way.
Title: Re: Ncubate v.0.32b is out
Post by: DJ Omnimaga on November 08, 2010, 02:23:49 pm
Exporting programs might eventually be useful for those with no link cable, although not a lot of people program in TI-Nspire BASIC. However, Wabbitemu has this for the 83+. Is this planned for Ncubate in the future?
Title: Re: Ncubate v.0.32b is out
Post by: ExtendeD on November 08, 2010, 03:39:17 pm
Yes I would like to integrate it if I find the time to.

But I would need (or need help) to understand what's wrong with the armloader added in the last release when calling file relating syscalls. Any call fails when the loader run it by interrupting the OS. The same calls work when loaded by the Ndless program loader. Some conditions seems to be required to be able to call these syscalls.

The broken code is available in this release but unused if anyone wants to have a look.
Title: Re: Ncubate v.0.32b is out
Post by: Ranman on November 08, 2010, 04:27:55 pm
This is awesome ExtendeD!

Source code level debugging is awesome!  8)
Title: Re: Ncubate v.0.32b is out
Post by: DJ Omnimaga on November 09, 2010, 12:41:04 am
Yes I would like to integrate it if I find the time to.

But I would need (or need help) to understand what's wrong with the armloader added in the last release when calling file relating syscalls. Any call fails when the loader run it by interrupting the OS. The same calls work when loaded by the Ndless program loader. Some conditions seems to be required to be able to call these syscalls.

The broken code is available in this release but unused if anyone wants to have a look.
Ah ok, hopefully you or other people can figure out soon. :)
Title: Re: Ncubate v.0.32b is out
Post by: kyllopardiun on December 05, 2010, 11:36:42 am
How/ what should I do to be able to compile it,
I am saying this because: when trying to compile with mingw/eclipse/cygwin I always get some errors
//I didn't edit the program [yet]

(http://img204.imageshack.us/img204/1359/unavngivetn.jpg)
Title: Re: Ncubate v.0.32b is out
Post by: apcalc on December 05, 2010, 12:01:06 pm
Do you have YAGARTO installed on your computer/added to your path?  That is where "arm-none-eabi-gcc" is located.
Title: Re: Ncubate v.0.32b is out
Post by: kyllopardiun on December 05, 2010, 04:04:10 pm
Do you have YAGARTO installed on your computer/added to your path?  That is where "arm-none-eabi-gcc" is located.
Thanks, now I can compile with the mingw, but I still not able to do it with the cygwin perhaps, I have to change something in the make file for do it...

(http://img69.imageshack.us/img69/6701/unavngivetsn.png)

But, it's not really a problem as I can compile it now (=
thanks Apcalc!
Title: Re: Ncubate v.0.32b is out
Post by: ExtendeD on December 05, 2010, 05:09:56 pm
Just edit Makefile.config and remove -mno-cygwin.
Title: Re: Ncubate v.0.32b is out
Post by: kyllopardiun on December 05, 2010, 06:36:10 pm
Maybe cygwin is too advanced for me...
I've tried removing it all -mno-cygwin and just the cygwin, in both cases I got:

(http://img202.imageshack.us/img202/3980/unavngivetfcx.png)

But, I don't think you shoud care about it, as it's easy to compile with mingw...

Title: Re: Ncubate v.0.32b is out
Post by: ExtendeD on December 06, 2010, 02:14:41 pm
I'm not sure if it's related, but don't forget to make clean before switching from Cygwin to mingw.
Title: Re: Ncubate v.0.32b is out
Post by: SirCmpwn on December 12, 2010, 01:10:19 pm
Hello,
I'd like to request the addition of command-line commands for everything, like send file and such, so I can just type things into the command line or modify the input stream to do stuff.
Title: Re: Ncubate v.0.32b is out
Post by: ExtendeD on December 12, 2010, 02:05:52 pm
Adding commands to connect and send a file should be easy, what else would you need?
What do you mean by "modifying the input stream"? Do you want to control the emulator with another program? Then we should probably choose a better solution for inter-process communication.
Title: Re: Ncubate v.0.32b is out
Post by: SirCmpwn on December 12, 2010, 02:10:09 pm
I do want to control the emulator from another program, but a managed program, which would be a headache to find a better way.  How about this for commands:
connect
disconnect
sendf
setdir
setbreak
clearbreak
Title: Re: Ncubate v.0.32b is out
Post by: ExtendeD on December 12, 2010, 02:13:09 pm
Isn't the existing 'k' command OK for setbreak/clearbreak?
Title: Re: Ncubate v.0.32b is out
Post by: SirCmpwn on December 12, 2010, 02:24:43 pm
Yes, my bad, I forgot about that one.
Title: Re: Ncubate v.0.32b is out
Post by: DJ Omnimaga on December 13, 2010, 02:42:23 pm
tiDE project feature addition?
Title: Re: Ncubate v.0.32b is out
Post by: ExtendeD on December 13, 2010, 04:21:08 pm
SirCmpwn, could you please try this version and tell me if it suits you?
http://bytecode.fr/miscfiles/ti/nspire/ncubate-v032c-alpha.zip

I have added 'ln' commands, see ReadMe.txt and command '?' .
Title: Re: Ncubate v.0.32b is out
Post by: SirCmpwn on December 13, 2010, 04:44:17 pm
Those look like they will work great, but can you allow input at any time via the command line, including outside of debug mode?  I don't want to force-press Ctrl+D from a program running it, that's just too complex.
Title: Re: Ncubate v.0.32b is out
Post by: ExtendeD on December 14, 2010, 02:26:41 pm
The debug commands require the emulator to be interrupted as it is designed, changing this only for the link commands would be quite complicated.

I don't know exactly how you are integrating with the emulator, but couldn't you send automatically a 'Ctrl+D' event? Or would you prefer to send a command to stdin while the emulator is running to ask it to enter debug mode?
Title: Re: Ncubate v.0.32b is out
Post by: SirCmpwn on December 14, 2010, 05:01:42 pm
I guess I could send a Ctrl+D event, but I'd have to give the emulator focus first, which is hard in .NET
Title: Re: Ncubate v.0.32b is out
Post by: SirCmpwn on January 16, 2011, 06:36:18 pm
So how's this coming?  Could I send commands via stdin?
Title: Re: Ncubate v.0.32b is out
Post by: ExtendeD on January 17, 2011, 02:40:03 pm
Sorry SirCmpwn, I am not working at all on Ncubate at the moment. Ndless's todo list is getting longer and longer...
Title: Re: Ncubate v.0.32b is out
Post by: SirCmpwn on January 17, 2011, 02:42:16 pm
No problem. I was thinking intra-system pipes would work well (though it would be complicated), but perhaps more work can be done after Ndless 2.0 is out.