Author Topic: kArmTI - TI-Nspire emulator with skin  (Read 218058 times)

0 Members and 1 Guest are viewing this topic.

Offline SpiroH

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 714
  • Rating: +153/-23
    • View Profile
Re: kArmTI - TI-Nspire emulator with skin
« Reply #195 on: August 20, 2012, 08:53:30 am »
Quote from: cyanophycean314
... The USBlink explorer would be pretty helpful. Go ahead and do it!
Quote from: adriweb
That USBLink is just plain awesome. Can't wait :D
Thanks guys for the overwhelming support!

Here is a beta release of the UsbLink explorer.
     after -->      
Features:
1. Drag & drop files between Nspire and a Host folder and vice-versa.
2. Multi-selection support.
3. ListCtrls have sorting capability
4. Easy to use (after the initial folders set-up).

Limitations and Instructions: (a bit longish...)
1. Transfers are (at this stage) limited to only document files (.tns)
2. I do not know yet how to get a list of the folders below the 'MyDocuments' (referred as 'top-folders' below).
According to HackSpire's documentation, we should use the root-path '/' for that, but it doesn't seem to work (yet?).
3. This actually a PITA, so my work around for that is the following:
   3.1 Initially the tree is filled up with some known folder names, like: Examples, MyLib and some others (ndless and gbc4nspire)
   3.2 We can Add/Delete folders to/from the tree. Use right-click context-menu for that. For Example, on the screen shot, i've added mviewer and nRGBLib.
   3.3 It is recommended that all the folders in the tree do exist on the calculator side!
   3.4 This work it 'only' required for the 'top-folders' (the ones just below MyDocuments).  All children folders are automagically detected and inserted in the tree.
   3.5 These top-folders will be persisted to/from the registry. You only need to do it once or whenever a new top folder is required.
       (I hope you don't use that many top-folders. Anyway, i still think its worth the effort. Maybe we'll be able to circumvent this limtation in the future, but right now i still dunno how.)

4. Start kArmTI and wait until the boot processes completes. Show the USBLink explorer (Alt+E).
5. To grab files from the calculator:
   5.1 Select a folder on the tree and you should get a list of its contents on the rhs (right hand side) list (nspire's).
   5.2 On the nspire list select the files you want to grab. Use the normal windows multi-select procedure: shift+cursor/mouse-click or ctrl+click
   5.3. Drag the files and drop them on the Host's list. This will start the multi-file grabbing procedure. It all goes well you should get your calc's files on the host side.
6. To send files to the calculator:
   6.1 Select a target folder on the tree (or use the already selected one).
   6.2 Select the files on the host's list you want to send to Nspire's side.
   6.3 Drag & Drop them on the Nspire's list. That will start the multi-file sending procedure.
7. Browsing nspire folders:
      Double-click on a folder (DIR) item on the Nspire list to launch a dir-list command that will show its contents.
8. Other:
       8.1 If you change a folder's name on the nspire that will be reflected on the tree, but the old folder will still 'sit' there.
       To purge this/these older folder(s) you may either force a tree refill (use the refresh button above the tree ) or individualy delete the folder.
       8.2 Open up the console to get a lot of log info.

Ok, enough of talk let's do the walk. Try it out and report your controlled emotions ;).
LBNL, I know it still needs some more work, but i feel i should show you something already 'kicking'.

Cheers,

Edit1: correcting some typos.
Edit2: I've just found the solution for the 'top-folders' nuisance mentionned above. Actually the HackSpire docs are correct. I can now confirm it. My bad, sorry. I'll get back with an improved solution, asap.
Here is the proof (for my case):
Listing '/' details...
dir: MyLib/
file: themes.csv; 191 (bytes);
dir: Examples/
dir: ndless/
dir: mviewer/
dir: gbc4nspire/
dir: nRGBLib/
Listing of '/' complete.

Edit3: You may just forget about my 'top-folders' work around crap and try my new fresh version v1.29 instead.



Offline DJ Omnimaga

  • Former TI programmer
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55823
  • Rating: +3151/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • DJ Omnimaga Music
Re: kArmTI - TI-Nspire emulator with skin
« Reply #196 on: August 21, 2012, 03:19:33 am »
Darn I really need to give this a try eventually. It is really becoming amazing.
In case you are wondering where I went, I left Omni back in 2015 to form CodeWalrus due to various reasons explained back then, but I stopped calc dev in 2016 and am now mostly active on the CW Discord server at https://discord.gg/cuZcfcF



T-Shirt store | Reverbnation | Facebook | Youtube | Twitter

Offline Adriweb

  • Editor
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1708
  • Rating: +229/-17
    • View Profile
    • TI-Planet.org
Re: kArmTI - TI-Nspire emulator with skin
« Reply #197 on: August 21, 2012, 04:35:41 am »
Just tested, it's awesome :D
My calculator programs
TI-Planet.org co-admin.
TI-Nspire Lua programming : Tutorials  |  API Documentation

Offline SpiroH

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 714
  • Rating: +153/-23
    • View Profile
Re: kArmTI - TI-Nspire emulator with skin
« Reply #198 on: August 21, 2012, 12:25:19 pm »
Quote from: adriweb
Just tested, it's awesome :D
Thank you! I will try to improve it a bit though.

Skin editor (v1.07): Before i forget about it (and as promissed sometime ago) i've decided to publish a new version on my skin editor (v1.07), done earlier this month but then suspended when i switched to kArmTI todo the more absorbing USBLink development.
     
Summary of the new Features:
I - General
 G1. Only two views: Keys Position and Keys Arrangement. LCD is treated as a (special) key.
 G1. MultiPane StatusBar
II - Position View (KeysDlg)
  P1. A ListCtrl showing the Keyname and its Skin Rectangle
  P2. A checkbox for easier visualization of the defined keys.
  P3. NDEFs keys do not show up anymore on the list.
III - Arrange View
  A1. Block-Move with mouse and keyboard
  A2. Change First (VK_SHIFT) and Last (VK_CONTROL) element inside Arrange-Rect with keyboard
  A3. Extra Align options: Middles, Centers, Make Samesize
  A4. Undo/Redo support
IV - Instructions/Warnings:
  W1. In Position view to move the keys with the keyboard, we first need to setfocus to mainview (eg: clicking the MainFrame caption or hitting a handle of the sizing recttracker). By default focus is set to the KeysDlg.
  This makes the key's selection (better) visible and also possible with the keyboard. It seems we can't have both (position control with the keyboard and good selection visibility on the keysdlg) at the sametime.
  W2. In Position view changes are only commited after a validating right-click whereas in Arrange view the commitment is instantaneous although we have the Undo/Redo possibility.

I'm afraid it will never become a finished product, simply because it's not possible. We always miss some unimplemented feature... That's the main reason i'm making it public now.
Maybe some of you who still care about skins will find use for it and/or will report some bugs.

Have fun,


Offline SpiroH

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 714
  • Rating: +153/-23
    • View Profile
Re: kArmTI - TI-Nspire emulator with skin
« Reply #199 on: August 21, 2012, 04:09:41 pm »
Quote from: fhub
Thanks SpiroH, your new version is very comfortable now! :)
About your USB-Explorer: ...A horizontal layout (Nspire and host windows side by side) would be nice.
Hi Franz, Nice to hear from you again! I'm glad you like the new Skin Editor (v1.07).
About the USB Explorer horizontal layout, well that shouldn't be a problem ;).
Right now i'm busy with higher priority personal stuff. My youngest daughter is applying for a place at the university in another city, so i must go there hunting for rooms. It shouldn't last long i hope.

Regards,

Offline Yeong

  • Not a bridge
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3739
  • Rating: +278/-12
  • Survivor of Apocalypse
    • View Profile
Re: kArmTI - TI-Nspire emulator with skin
« Reply #200 on: August 21, 2012, 06:57:20 pm »
Do I need additional materials such as the OS and stuff?
Sig wipe!

Offline SpiroH

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 714
  • Rating: +153/-23
    • View Profile
Re: kArmTI - TI-Nspire emulator with skin
« Reply #201 on: August 21, 2012, 07:15:14 pm »
Do I need additional materials such as the OS and stuff?
Thanks for your interest. Yes you do. Please refer to the first post and follow the documentation links.

Anyways, I'm not sure if this is wrong with karmTI or with the underlying nspire_emu, but it's happened quite a few times now. The keyboard randomly loses connection to the emulator and I can't control anything with it. Mouse control still works and using the keyboard in other open applications work. It's quite inconvenient...
Some time ago Wayne detected a similar problem and i have cross related  it to a possible mviewer/ndless stdio lock-uk, but i'm still not sure about the very origin of the keyboard connection loss (post: http://ourl.ca/16585;msg=252286). If it ever occurs again (and certainly it will) my suggestion is the following: would you please try to establish some correlation between the application you're using (whether it runs on top of ndless or is ti's native software) and the keyboard connection loss. That would perhaps help to establish some clues. 'Random connection loss' is rather vague. Of course, we would all be much happier after this flaw is pinpointed. At this time, that's all i can say. Is not much, but is some feedback.

Quote from: fhub
Great idea indeed, unfortunately not easy to use on a netbook. A horizontal layout (Nspire and host windows side by side) would be nice.
Hi Franz, I can see you're logged in. So here goes something for you:
 
Do you like it? Wait just a little bit longer...
Cheers,




Offline SpiroH

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 714
  • Rating: +153/-23
    • View Profile
Re: kArmTI - TI-Nspire emulator with skin
« Reply #202 on: August 24, 2012, 09:18:43 am »
So if you would ask me, I would even suggest to remove this leftmost column showing only the folders, and use just 2 columns: one for Nspire and one for Host.
The folders should simply be integrated into these 2 columns (as every usual filecommander today does it), being displayed at the top of the filelist, and if you go into a folder then there should just be a '..' at the top of the list which brings you back to the parent folder.
Thanks Franz for your useful comments. The 'previous dir' ('..') thing is a good idea and i intend make use of it! However, i think the tree gives a much faster (random not sequential!) access to the target dir (too much double-clicking is old-fashioned by today's standards), so i might just keep it. :)
Cheers,

Offline Wayne

  • LV3 Member (Next: 100)
  • ***
  • Posts: 72
  • Rating: +3/-3
    • View Profile
Re: kArmTI - TI-Nspire emulator with skin
« Reply #203 on: August 24, 2012, 01:09:33 pm »
Nice work SpiroH.
Could you add delete, create or rename file/folder to the USB Explorer?
I like the tree view ;) Maybe you could add a second one for the "root".

Offline shmibs

  • しらす丼
  • Administrator
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2132
  • Rating: +281/-3
  • try to be ok, ok?
    • View Profile
    • shmibbles.me
Re: kArmTI - TI-Nspire emulator with skin
« Reply #204 on: August 24, 2012, 01:27:26 pm »
why would there be two trees?
i have no clues how that follows, and, typically, the root folder would just not include a ".."

Offline Wayne

  • LV3 Member (Next: 100)
  • ***
  • Posts: 72
  • Rating: +3/-3
    • View Profile
Re: kArmTI - TI-Nspire emulator with skin
« Reply #205 on: August 24, 2012, 02:23:11 pm »

Offline Lionel Debroux

  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2135
  • Rating: +290/-45
    • View Profile
    • TI-Chess Team
Re: kArmTI - TI-Nspire emulator with skin
« Reply #206 on: August 24, 2012, 02:32:28 pm »
TILP and TINCLS both have a target and a host tree.
Member of the TI-Chess Team.
Co-maintainer of GCC4TI (GCC4TI online documentation), TILP and TIEmu.
Co-admin of TI-Planet.

Offline SpiroH

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 714
  • Rating: +153/-23
    • View Profile
Re: kArmTI - TI-Nspire emulator with skin
« Reply #207 on: August 24, 2012, 03:40:08 pm »
Amazing how fast such a discussion can develop these days.

if a ".." is included in the file pane, then clicking on it would move the user up one folder. it might be easier for some, while the tree view would be for others, so there's no reason not to include it.
In this particular issue, I tend to agree more with shimbs's approach. Besides, the host's tree although not visible is already there behind the browse button. 

The reasons i'm not too keen (at this moment) on a host's tree are the following:
1. The host's folder (in my simple approach) is not (yet) supposed to change that often. I agree, it would be handy to have a host's tree (in a more mature version) because it would simplify the mirroring the nspire's contents on to the host, eg: for backup purposes.
2. Yet another tree requires more space on the dialog (form).
3. Higher flexibility has to be weighed against development effort and time. I gather I'll follow the simpler step by step procedure and then if/when it works well change a bit the GUI.
4. The important thing is that the underlying communication software is reliable (which still needs improvements), the rest can be adjusted a bit later.

Thank you all for the various contributions.



Offline Lionel Debroux

  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2135
  • Rating: +290/-45
    • View Profile
    • TI-Chess Team
Re: kArmTI - TI-Nspire emulator with skin
« Reply #208 on: August 24, 2012, 03:59:51 pm »
In Linux, Filesystem in USErspace (FUSE) and Character device in USErspace (CUSE) enable exposing lots of things as a filesystem in several hundreds of line of code. Well, the Nspire would need much, much more than several hundreds of lines, because its protocols are nontrivial, and unlike everything else.
It's harder in Windows, AFAIK, and it wouldn't work on Wine anyway (at least because the changing USB stack is not implemented in Wine).
« Last Edit: August 24, 2012, 04:01:31 pm by Lionel Debroux »
Member of the TI-Chess Team.
Co-maintainer of GCC4TI (GCC4TI online documentation), TILP and TIEmu.
Co-admin of TI-Planet.

Offline SpiroH

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 714
  • Rating: +153/-23
    • View Profile
Re: kArmTI - TI-Nspire emulator with skin
« Reply #209 on: August 27, 2012, 05:55:16 am »
Here is a follow-up version of my USB Explorer that you might find handy to use on occasions.

How does it look? Well, it will try to match the type of skin you're using. Either vertical or horizontal. So, one of the following or both if you switch skins :).

     

What can you do with it? I'm not going too much into details because you should be able to figure it out by yourself (a lot of clever guys around the place).

Basics:
On CalcTree (context-menu/toolbar): 1. Create Folder; 2. Delete Folder      
On CalcList (context-menu/toolbar):   3. Rename a Folder or File; 4. Delete File(s) - multi-selection also possible.
5. Copy Files using Drag&Drop from the CalcList to the target Folder on the CalcTree.
   
To copy file(s) do the following:
   1. Make sure the target dir where the files are to be copied to is visible on the CalcTree.
   2. Select the file(s) in the CalcList and drag them over the drop-target folder on the tree (which becomes high-lighted).
6. The normal file operations (send/receive) between Nspire and Host still work ;) but were already explained before. Short: just use D&D.
7. Other: On the Nspire's side there's a vertical splitter that let's yout adjust the width of tree vs list. The toolbar is shared: 3 buttons on the left-side operate on the calctree the 2 buttons on the right operate on the caclist.
Except for the refresh buttons, the toolbar replaces the context-menus.

This is still a work in progress but i hope you can already enjoy some of its features (as i correct some minor bugs),

SpiroH