Page 2 of 14

Posted: Sat 19 Nov, 2005 2:52 am
by Jim e
threefingeredguy wrote:No offense, but all it will add is size and slowness. It may be a good way to start learning, but the code will be unoptimized.
That depends entirely on timendus optimising abilties.
Kozak wrote:What does it add besides looking good and structured.?
Uhhh....free code. :roll:


Personally though I think a code depository should come first.

Posted: Sat 19 Nov, 2005 3:36 am
by necro
sounds promising...I just hope it won't add to more head aches (as asm include files, for me at least, make it even more a bitch to compile)

Posted: Sat 19 Nov, 2005 12:30 pm
by Timendus
Jim e wrote:
threefingeredguy wrote:No offense, but all it will add is size and slowness. It may be a good way to start learning, but the code will be unoptimized.
That depends entirely on timendus optimising abilties.
Kozak wrote:What does it add besides looking good and structured.?
Uhhh....free code. :roll:
Another short reply... I'm at my girlfriend's place so I'll keep it short :)

The code will not be large, nor slow, because the code in the include will be highly optimized in it's final state. Or at least it should be, since everybody can add, optimize, fix bugs, etc. :) And that's also what it adds to the process of assembly programming; it doesn't just look better in your source, you'll be able to use optimized routines without having to think about their implementation. It's a bit of abstraction that we haven't seen on calculators before, and that will place the emphasis back on writing good background code instead of interfacing with the user/file system/hardware/etc.

I'll upload a simple beta once I get home (sunday evening or monday) so you can see what I mean and try it out.
Personally though I think a code depository should come first.
Why? This is it's next evolution 8)

Posted: Sat 19 Nov, 2005 12:55 pm
by coelurus
It's a nice idea, make the code clean enough so that people can copy n paste and it'll work as a code repository too.

Posted: Sat 19 Nov, 2005 4:17 pm
by Jim e
Timendus wrote:
Personally though I think a code depository should come first.
Why? This is it's next evolution 8)
Well although certain macros would quicken things, it's not a perfect solution for everything. Without making a new assembler, it'll never be so intuitive to make asm a breeze.

But for the simple fact of making redundant code simple, this should work pretty well.

Don't forget things like this

Code: Select all

    ld de,$0000
    call dispstring
 .db "Hello",0


Dispstring:
    pop hl
    ld (pencol),de
   bcall(_vputs)
   jp (hl)

Posted: Mon 21 Nov, 2005 2:16 am
by Timendus
Yes, you're right. It isn't the perfect solution for everything, but it could help many people by doing the boring stuff for them, and I think it'll make ASM more tangible for Basic programmers that are daring to take the leap into ASM.
benryves wrote:I was writing a simple Z80 OS a while ago which has a bunch of string manipulation routines (reverse string, string->number, number->string, convert to hex, that sort of thing) - any use to you?
I think that would be useful, yes :)
MissingIntellect wrote:I was working on a project similar to this, of doing an GUI API, but it's kind of on the back burner now...
I somewhat intend to add GUI routines for making a default window with a default button et cetera, but I'm not sure if anyone would want to use it... If you want to make that (or if you have it lying around somewhere) please do :P

Anyway; I renamed a few macro's, improved some routines a bit (added text scrolling on newline in the graphscreen), added quite a few comments to my source, made a nice asmdoc file of it (see signature if you don't know what asmdoc is ;)), wrote a demo, and uploaded the whole bundle. Go download and tell me what you think :)

Asm API

Image

* Mutters to himself: damn, that's cool... I wrote that demo with all that text in 10 minutes with a laugh instead of having to position it for two hours * :P

Posted: Mon 21 Nov, 2005 3:20 am
by kalan_vod
Image
Thats what I get when I run it in pindurti and press [ON], I haven't ran it on calc yet, but i am scared :P. The source code looks nice and easy to use :D.

Edit: On calc it doesn't do that, but when I run it and go through it, I didn't type cow and it said "thats not what I asked you to" and then I typen anything else and it types random things in a diagenal effect.

Posted: Mon 21 Nov, 2005 10:46 am
by benryves
kalan_vod wrote:Edit: On calc it doesn't do that, but when I run it and go through it, I didn't type cow and it said "thats not what I asked you to" and then I typen anything else and it types random things in a diagenal effect.
Is this in MirageOS? MirageOS switches off the automatic text scrolling flag for some unknown reason.

Posted: Mon 21 Nov, 2005 11:33 am
by Timendus
Ah, yes... guess I'll turn scrolling back on then in my routine. I'm going to change it entirely when I add word wrapping, so I'll see what I can do.

And about pressing [on] when asked for input; as I said the input routine really sucks, and I hope to be able to use Ben's. I use _getkey, and that seems to give this result in PTI when you press [on] :( All I can say is that it shouldn't be my fault :)

Oh, don't forget to read api.html, that's basicly what this is all about you know. Having a static interface while the code behind it stays abstract and may improve without forcing a programmer to change his code. Besides, I didn't write all that for no reason :P

Posted: Mon 21 Nov, 2005 1:06 pm
by benryves
I didn't think/know you had a TI-83+ Timendus? MirageOS is an odd beast at times.
Timendus wrote:And about pressing [on] when asked for input; as I said the input routine really sucks, and I hope to be able to use Ben's.
Oh, cripes. Er. How are you going to want that to work? :)
I'm currently working on the keyboard routines, but there are a number of considerations - for example, not all characters are 1 character wide! (Carriage return, control codes (eg ^C), tabs (anything up to 4)).

Posted: Mon 21 Nov, 2005 4:37 pm
by Timendus
No, I don't have a Ti-83+, that's why I hadn't seen the problem yet, but I have PTI ;)
* Downloads MirageOS and CrunchyOS (never used either of them before :oops:)
* Adds two lines to the api
* Compiles and runs with either shell
And you were right; turning on the scrolling solved the problem. :P

And concerning the keyboard routines... We'd need a routine that handles all those weird characters internally and only shows valid characters on the screen and in the buffer. And it would preferable make it entirely abstract to the programmer which device gives the input (TI keyboard or external one). Think you can do that? :)

Posted: Mon 21 Nov, 2005 5:36 pm
by kalan_vod
Btw I was using cruchyOS, its the only one I use.

Posted: Mon 21 Nov, 2005 6:23 pm
by necro
this is looking very cool..hopefully some matrix and string stuff will be added soon

Posted: Mon 21 Nov, 2005 10:18 pm
by threefingeredguy
For a matrix, it would be a simple thing to just use a list with a width indicator.

Posted: Tue 22 Nov, 2005 12:14 am
by dragon__lance
i don't really get it, so wat exactly does this do? does it help u program assembly on comp, or basic on calc? btw, the screenie looks really good :)