Omnimaga: The Coders Of Tomorrow
Welcome, Guest. Please login or register.
 
Omnimaga: The Coders Of Tomorrow
23 May, 2013, 11:51:29 *
Welcome, Guest. Please login or register.

Login with username, password and session length
 
   home   news downloads projects tutorials misc forums rules new posts irc about Login Register  
+-OmnomIRC

You must Register, be logged in and have at least 40 posts to use this shout-box! If it still doesn't show up afterward, it might be that OmnomIRC is disabled for your group or under maintenance.

Note: You can also use an IRC client like mIRC, X-Chat or Mibbit to connect to an EFnet server and #omnimaga.

Pages: [1] 2   Go Down
  Print  
Author Topic: Ncubate - nspire_emu enhanced -  (Read 6147 times) Bookmark and Share
0 Members and 1 Guest are viewing this topic.
ExtendeD
Coder Of Tomorrow
LV8 Addict (Next: 1000)
*
Offline Offline

Gender: Male
Last Login: Today at 10:41:36
Date Registered: 02 January, 2010, 13:03:41
Location: France
Posts: 765

Topic starter
Total Post Ratings: +151

View Profile
« on: 31 August, 2010, 12:34:45 »
+4

Ncubate is a custom version of Goplat's nspire_emu (released with his permission) enhanced with features I personally needed for my own use and I'd like to share.
This version mainly adds calculator state save and reload, useful debugger commands and support for the GDB debugger.

-> Ncubate v032b

Help for the GDB support is available on Hackspire.

Ncubate adds the following features to nspire_emu v032:

GUI:
- NEW: 'File -> Save State' let you save the whole emulator state to a file
  named <flash_image>.sav. The file is loaded on startup if it exists. You can
  request a state reload with 'File -> Reload State'
  Caution, newer versions of Ncubate may fail to read .sav files produced by
  previous versions. Delete these files when upgrading.
- NEW: 'File -> Save Flash As...' suggests the current flash image name
- NEW: several keyboard shortcuts added

Debugger:
- NEW: Supports the GNU Debugger GDB. You can debug at source-level programs
  built with Ndless. More information available at http://hackspire.unsads.com
- NEW: The register PC can be changed with the command 'rs
- NEW: Command 'j' to jump to the next instruction. This is useful for example
  to jump over an halt() call in an Ndless program.
- NEW: Command 'ww' to write a word to an address
- NEW: Command 'ss' to search a string in memory
- NEW: "+x" is the default flag for the breakpoint command 'k'
- NEW: Command 'wf' to load a file to memory
- NEW: Command-line option /R=cmdfile can be used to automatically run debugger
  commands on startup. Use a single line for each command. At the end of the file,
  the debugger switches to the standard input. You can use 'c' as the last
  command to continue the emulation.
- CHG: The breakpoint command 'k' takes as parameter a virtual address instead
  of a physical address
- CHG: Debugger command 'w' renamed to 'wm'
- CHG: The command 'wm' takes as parameter a virtual address instead of a
  physical address
- CHG: Read/write breakpoint logs display a virtual address instead of a
  physical address
- FIX: Command 'd' doesn't crash if the parameter is missing
- FIX: Broken 'w' command

CPU/Ports:
- ADD: (internal) ARM loader for arbitrary ARM snippet execution by the emulator
- FIX: no more 'bad read word' on auto power down, but still hangs

Flash:
- FIX: Flash image closed when synced to disk, for external edition

Build:
- NEW: Makefile.config for custom compilation flags
- NEW: make clean
- FIX: compilation warnings
« Last Edit: 06 November, 2010, 18:39:39 by ExtendeD » Logged

ndlessly - Progress and insights on Ndless
Ndless / Hackspire - Third-party TI-Nspire development
Snake X
LV8 Addict (Next: 1000)
********
Offline Offline

Gender: Male
Last Login: Yesterday at 13:09:51
Date Registered: 18 March, 2010, 02:48:47
Posts: 806


Total Post Ratings: +25

View Profile
« Reply #1 on: 31 August, 2010, 13:10:45 »
0

good work ExtendeD! Smiley
Logged

There's a Zombie for that™
Deep Thought
So much to do, so much time, so little motivation
Administrator
LV13 Extreme Addict (Next: 9001)
*
Offline Offline

Gender: Male
Last Login: Today at 03:56:01
Date Registered: 19 May, 2009, 08:00:00
Location: The Universe
Posts: 7813


Total Post Ratings: +706

View Profile WWW
« Reply #2 on: 31 August, 2010, 19:36:58 »
0

Yep, great work! The new features are pretty useful. And nice job on the name, as usual Cheesy
Logged




DJ Omnimaga
Retired Omnimaga founder (Site issues must be PM'ed to Netham45, Eeems, Shmibs, Deep Thought and AngelFish, not me.)
Editor
LV15 Omnimagician (Next: --)
*
Offline Offline

Gender: Male
Last Login: Today at 07:29:18
Date Registered: 25 August, 2008, 07:00:21
Location: Québec (Canada)
Posts: 50226


Total Post Ratings: +2615

View Profile WWW
« Reply #3 on: 31 August, 2010, 19:42:52 »
0

Great work ExtendeD. Those features should be pretty useful, especially programmers Smiley
Logged

Retired 83+ coder, Omnimaga/TIMGUL founder. Now doing power metal music (formerly did electronica)

Follow me on Bandcamp|Facebook|Reverbnation|Youtube|Twitter|Myspace
apcalc
The Game
Coder Of Tomorrow
LV10 31337 u53r (Next: 2000)
*
Offline Offline

Gender: Male
Last Login: 19 May, 2013, 16:59:33
Date Registered: 20 March, 2010, 16:31:47
Location: 2003 UB313
Posts: 1393


Total Post Ratings: +118

View Profile
« Reply #4 on: 31 August, 2010, 21:23:19 »
0

Looks nice ExtendeD!

* apcalc replaces his Nspire emulator with this
Smiley
Logged


bwang
LV7 Elite (Next: 700)
*******
Offline Offline

Last Login: 11 August, 2012, 12:59:06
Date Registered: 20 June, 2009, 01:42:58
Posts: 632

Total Post Ratings: +19

View Profile
« Reply #5 on: 31 August, 2010, 23:04:55 »
0

Yes, save states are pro Cheesy
Logged
t0xic_kitt3n
LV10 31337 u53r (Next: 2000)
**********
Offline Offline

Gender: Male
Last Login: 13 May, 2013, 01:56:35
Date Registered: 16 June, 2010, 20:46:00
Location: w,x,y,z
Posts: 1583


Total Post Ratings: +32

View Profile
« Reply #6 on: 01 September, 2010, 21:29:04 »
0

Nice job! Now only if you could add the GUI to that...
Logged




██████  ██  ██  ███████           ████    ██    ██   ██ ███████
█ ██ █  ██  ██   ██   █          ██  ██  ████   ███ ███  ██   █
  ██    ██  ██   ██             ██   ██ ██  ██  ███████  ██    
  ██    ██  ██   ██  █         ██       ██  ██  ███████  ██  █
  ██    ██████   █████         ██       ██  ██  ██ █ ██  █████ 
  ██    ██  ██   ██  █         ██   ███ ██████  ██   ██  ██  █
  ██    ██  ██   ██             ██   ██ ██  ██  ██   ██  ██    
  ██    ██  ██   ██   █          ██  ██ ██  ██  ██   ██  ██   █
 ████   ██  ██  ███████           █████ ██  ██  ██   ██ ███████

qazz42
LV9 Veteran (Next: 1337)
*********
Offline Offline

Last Login: 29 December, 2012, 01:39:31
Date Registered: 19 June, 2010, 16:06:31
Posts: 1134


Total Post Ratings: +17

View Profile
« Reply #7 on: 01 September, 2010, 21:33:54 »
0

wow, this is great, awsome job extended
Logged

ExtendeD
Coder Of Tomorrow
LV8 Addict (Next: 1000)
*
Offline Offline

Gender: Male
Last Login: Today at 10:41:36
Date Registered: 02 January, 2010, 13:03:41
Location: France
Posts: 765

Topic starter
Total Post Ratings: +151

View Profile
« Reply #8 on: 21 September, 2010, 10:02:16 »
0

New version available:

* v032a - 2010/09/21
 - Migrate to nspire_emu v032
 - ADD: Debugger command 'ss'
 - ADD: Debugger command 'wf'
 - CHG: Debugger command 'w' renamed to 'wm'
 - FIX: Debugger command 'j' supports thumb state
 - FIX: Broken debugger command 'w' (now 'wm')
« Last Edit: 21 September, 2010, 10:05:55 by ExtendeD » Logged

ndlessly - Progress and insights on Ndless
Ndless / Hackspire - Third-party TI-Nspire development
DJ Omnimaga
Retired Omnimaga founder (Site issues must be PM'ed to Netham45, Eeems, Shmibs, Deep Thought and AngelFish, not me.)
Editor
LV15 Omnimagician (Next: --)
*
Offline Offline

Gender: Male
Last Login: Today at 07:29:18
Date Registered: 25 August, 2008, 07:00:21
Location: Québec (Canada)
Posts: 50226


Total Post Ratings: +2615

View Profile WWW
« Reply #9 on: 21 September, 2010, 10:13:30 »
0

Nice! Keep up the good work on this Smiley
Logged

Retired 83+ coder, Omnimaga/TIMGUL founder. Now doing power metal music (formerly did electronica)

Follow me on Bandcamp|Facebook|Reverbnation|Youtube|Twitter|Myspace
ExtendeD
Coder Of Tomorrow
LV8 Addict (Next: 1000)
*
Offline Offline

Gender: Male
Last Login: Today at 10:41:36
Date Registered: 02 January, 2010, 13:03:41
Location: France
Posts: 765

Topic starter
Total Post Ratings: +151

View Profile
« Reply #10 on: 09 October, 2010, 00:27:48 »
0

I'm currently working on the integration of the GNU Debugger GDB in Ncubate. It should greatly improve the C and ARM development experience for the TI-Nspire.

Ncubate is going to implement the GDB remote protocol, so any debugger compatible with it will be able to plug into the emulator for source level debugging.

Here are a few screenshots which give an idea of this feature:

With the Eclipse CDT debugger:


An older one with Insight (RedHat's GUI for GDB):


An other one also quite old, with the debugger of the disassembler IDA, which would allow OS live analysis with all its symbols:


Integration of GDB (through Ncubate) with Ndless's program loader still needs to be implemented. Currently programs to debug are transfered manually with GDB's load command (as you can see on the first screenshot) at a fixed addressed define at compile time (for example in the middle of the TI-Nspire screen as you can also see).
« Last Edit: 09 October, 2010, 00:28:34 by ExtendeD » Logged

ndlessly - Progress and insights on Ndless
Ndless / Hackspire - Third-party TI-Nspire development
Deep Thought
So much to do, so much time, so little motivation
Administrator
LV13 Extreme Addict (Next: 9001)
*
Offline Offline

Gender: Male
Last Login: Today at 03:56:01
Date Registered: 19 May, 2009, 08:00:00
Location: The Universe
Posts: 7813


Total Post Ratings: +706

View Profile WWW
« Reply #11 on: 09 October, 2010, 01:49:15 »
0

Nice! Would we need to install extra stuff for it to work, though?
Logged




DJ Omnimaga
Retired Omnimaga founder (Site issues must be PM'ed to Netham45, Eeems, Shmibs, Deep Thought and AngelFish, not me.)
Editor
LV15 Omnimagician (Next: --)
*
Offline Offline

Gender: Male
Last Login: Today at 07:29:18
Date Registered: 25 August, 2008, 07:00:21
Location: Québec (Canada)
Posts: 50226


Total Post Ratings: +2615

View Profile WWW
« Reply #12 on: 09 October, 2010, 04:02:32 »
0

Nice!
Logged

Retired 83+ coder, Omnimaga/TIMGUL founder. Now doing power metal music (formerly did electronica)

Follow me on Bandcamp|Facebook|Reverbnation|Youtube|Twitter|Myspace
ExtendeD
Coder Of Tomorrow
LV8 Addict (Next: 1000)
*
Offline Offline

Gender: Male
Last Login: Today at 10:41:36
Date Registered: 02 January, 2010, 13:03:41
Location: France
Posts: 765

Topic starter
Total Post Ratings: +151

View Profile
« Reply #13 on: 09 October, 2010, 10:11:45 »
0

Deep Thought: YAGARTO brings the command line version of GDB, you could use it directly but, well, it's command-line. Insight isn't distributed with it anymore, anyway I saw strange behaviors when using it.
At the moment I find that Eclipse CDT is the most pleasant to use. You need to download a zip and enter a few setup values.
Logged

ndlessly - Progress and insights on Ndless
Ndless / Hackspire - Third-party TI-Nspire development
Deep Thought
So much to do, so much time, so little motivation
Administrator
LV13 Extreme Addict (Next: 9001)
*
Offline Offline

Gender: Male
Last Login: Today at 03:56:01
Date Registered: 19 May, 2009, 08:00:00
Location: The Universe
Posts: 7813


Total Post Ratings: +706

View Profile WWW
« Reply #14 on: 10 October, 2010, 00:32:06 »
0

Oh, I see, so the UI changes depending on what you have installed.
Logged




Pages: [1] 2   Go Up
  Print  
 
Jump to:  

Powered by EzPortal
Powered by MySQL Powered by SMF 1.1.18 | SMF © 2013, Simple Machines Powered by PHP
Page created in 0.354 seconds with 31 queries.
Skin by DJ Omnimaga edited from SMF default theme with the help of tr1p1ea.
All programs, games and songs avaliable on this website are property of their respective owners.
Best viewed in Opera, Firefox, Chrome and Safari with a resolution of 1024x768 or above.