Omnimaga
Omnimaga => Discontinued => Our Projects => XDE => Topic started by: Deep Toaster on September 21, 2010, 06:41:48 pm
-
So, now that I have Axe 0.4.4, I've finally decided to make something useful in Axe: a development environment. It's probably gonna take a while, though, so don't expect a demo or anything this month. Also, I can't seem to find my link cable, which means no screenshots or anything until I get enough of it done to trouble a friend of mine to lend me his. But just as a preview, this is going to include the following when it's done (if it gets done):
- A small-text editor
- Sprite editing and inserting
- Fully-featured bitmap drawing
- Code highlighting, including grayed-out comments
- LunarIDE-style command auto-completion
- Menus for the commands, organized by category
- Saving into backups
- Compile-and-run, if Axe has an ASM entry point
- Parentheses marking
So what do you guys think? Any feature requests?
-
How about converting text to TI-OS tokens? I prefer typing stuff out rather than getting it from the catalog or a menu.
-
Yeah, that's what I meant by "LunarIDE-style command auto-completion".
-
I actually prefer Tokens to typing it out O.O I can type super fast with tokens, but as soon as i need to type everything out, I would just get super slow :( Thats the single reason i really never tried any on calc editors.
-
Yeah, that's why I'm also including a menu. I'm thinking F3 (F1 for File, F2 for Edit, F3 for Insert, etc.). I know that people might get disoriented since it's different from the TI-OS, but with Axe tokens being reasonably new, it might not matter.
-
Yeah, unfortunately with me, i know all the TiOS shortcuts, so Sub() is [Catalog] [T] [Up] [Up] and a String is [Vars] [7] [String#] and all the things like that. Thats the way i program unfortunately, so while i think this will be very helpful and useful for many people, i just cant use it myself. But dont let that discourage you! I see so much promise in this program, and the Calculator really does need a better editor.
-
Would making the editor an option of the user be reasonable? That way people like Builder can do it the way they like to and others can do it the other way.
Also, good luck on this. It sounds really cool :)
-
when you say sprite editing/inserting, would this be 2-4 level grayscale, and the hex code is just placed into your program after you finish editing it?
-
Both token and text support would be nice IMHO. I like to select tokens but other people prefer typing them like on the TI-85. As for sprite support, I wonder if it would be cool when moving the cursor over a string of hex characters that is 16 char long it would display the sprite nearby? Looks like a nice project. Good luck
-
Thanks!
Would making the editor an option of the user be reasonable? That way people like Builder can do it the way they like to and others can do it the other way.
Also, good luck on this. It sounds really cool :)
It's just a third-party editor, so basically, you write/edit a program and it saves to a plain 8XP, as if you made it in TI-OS. Basically, it's like using DreamWeaver vs. Notepad. They both work, it's just an extra editor.
I can't really make the program access the TI-OS program editor, though, if that's what you mean.
when you say sprite editing/inserting, would this be 2-4 level grayscale, and the hex code is just placed into your program after you finish editing it?
Yep, exactly :)
And I might add a 16x16 sprite editor that saves it as four separate 8x8 sprites when I have the time...
Both token and text support would be nice IMHO. I like to select tokens but other people prefer typing them like on the TI-85. As for sprite support, I wonder if it would be cool when moving the cursor over a string of hex characters that is 16 char long it would display the sprite nearby? Looks like a nice project. Good luck
Yeah, that's what I meant. It's going to have an auto-complete thing where you just type out some letters and it completes it and converts it to a token for you. There's also going to be a command list, so yeah, it's going to be like on the 85/89, where you can either type the token letters or paste it, and it gives the same result.
-
Well when I meant editor I meant the token vs. typing thing. Like making that an option.
But cool. Good luck.
-
Oh, yep. You can use either.
Actually, that reminds me of something: Should I tokenize the text as it's being typed, or when the program is saved, like on a TI-89? Which would be better?
-
Saved. Typing would be slow, and glitchy. What if you're typing a command that has another command inside it? It would tokenize to something you don't want.
The 86 actually tokenized it when it was run, as far as I can tell. It took a while after editing to run my big stuff, so i assumed that was what it was doing :P You'd have to do it with saving, though.
I would definitely love to use this btw. I never liked having to use separate progs for spriting and such. :) Hmm, technically, couldn't you also program in BASIC/Xlib and such, too? as long as you can manually edit the header line, it should just work, right?
-
I wonder if it would be possible to create a compiled on calc language using Axe...
...and then another one in that...
But seriously, good luck with this project. It looks cool.
-
Oh, yep. You can use either.
Actually, that reminds me of something: Should I tokenize the text as it's being typed, or when the program is saved, like on a TI-89? Which would be better?
Saved. On the 86 it's tokenized the first time the program is ran. It's detokenized when opened in the editor. I agree that typing would be too slow.
-
I would definitely love to use this btw. I never liked having to use separate progs for spriting and such. Hmm, technically, couldn't you also program in BASIC/Xlib and such, too? as long as you can manually edit the header line, it should just work, right?
Thanks! About BASIC/xLIB, well, I was thinking of converting it to a BASIC editor when done, but the problem is that BASIC has a lot more tokens to keep track of than Axe, and they look different, too, so it might be hard...
I wonder if it would be possible to create a compiled on calc language using Axe...
...and then another one in that...
Actually, I did start on a C compiler written in Axe, then gave it up for this.
If anyone's willing to help me with that, I'd be happy to take it up again :)
Saved. On the 86 it's tokenized the first time the program is ran. It's detokenized when opened in the editor. I agree that typing would be too slow.
Oh, okay, thanks. I'll just tokenize it when it's saved, I guess.
-
I wonder if it would be possible to create a compiled on calc language using Axe...
...and then another one in that...
Actually, I did start on a C compiler written in Axe, then gave it up for this.
If anyone's willing to help me with that, I'd be happy to take it up again :)
I wonder if it would be possible to do a language in Axe, but again, I am worried it might be a bit hard to do, especially under 16 KB, plus Axe is not as optimized as ASM so the language might end up even less optimized than it.
-
Yeah, but Axe supports raw hex, so that wouldn't be a problem...
Anyway, working on the keymap now. It's got a long way to go till anyone can use it...
-
Yeah true, although in that case I wonder if it wouldn't be better to write it in pure ASM if the entire interpreter/compiler is hex ASM :P
-
Well, I'm actually planning to convert some of my bigger projects from now on (when they're finished, of course) to pure ASM. It should be easier after Axe gives me the main framework of the program.
-
Ah ok. Are you ditching Axe at one point or something? D:
-
No, no, Axe is still a brilliant new language that I'll be using a lot. I'm just going to convert some more memory/CPU-consuming projects to ASM after I compile them. In other words, I compile it with Axe, then go through the ASM code and optimize it if I can :P Axe'll still get credit, though.
-
OOh ok I see. I guess disassemblers are pretty handy sometimes ;D (if they work properly)
-
That's the nice thing about simple processors like the z80. Do you think you could dissasemble some x86 and have it turn out in any way legible? :P Even ARM would probably be pretty scrambled.
-
Sounds neat. Good luck Deep Thought. ;D
-
I'd show you guys a shot if I only find my link cable. Oh well, I'll have to do without visuals for now :D
It's going really well (especially considering the many detours I took working on my dozen or so other projects :P). Typing works very well now, including scrolling to the side (I have yet to add vertical scrolling). So far, the cursor is a 2x5 RectI( thing.
-
Nice :D
-
Oh, and a new idea for a feature: an XDE-specific filetype (stored in an appvar) that can be converted to a normal program before compiling.
Not sure how to compress a large body of text, though. Anybody got ideas?
EDIT: Quadruple buffering ... this is getting complicated :P
-
Quadruple buffering? How is that necessary? :P
Sounds like overkill to me...
Edit: * calcdude applies his "not meant to be offensive" marker.
-
Quadruple buffering? How is that necessary? :P
Sounds like overkill to me...
Edit: * calcdude applies his "not meant to be offensive marker."
Well, the simplest way I've found to do highlighting is to just store the highlighted blocks to the back-buffer (though it takes a lot of memory, it's a lot easier to work with). In my scrolling code, both the buffer and the back-buffer are being scrolled off into new buffers. And yeah, it kinda is overkill, but I'm not going to waste a month or so trying to compress highlight locations that can be dynamically edited :P
-
Sounds like fun ;D
Good luck! :)
-
Wow quadruple buffering O.O
What would be the main use for this? I know in Axe double buffers is used for grayscale or for backgrounds but otherwise I am a bit confused x.x
-
Yeah, that's what I use the two main buffers for, but because it can scroll off to the left side of the screen, I'm saving the cut-off portion in two more buffers :P
-
*bump*
Actually, I gave up quad buffering. I now need only two buffers. Too late, though, I already moved all the vars out of A-Z :P But the only problem with doing the scrolling the way I'm doing it now is that highlighting's gonna be a lot more complicated.
I don't have my link cable, so no screenshots, but here're some pics:
MOS screenie:
http://img.removedfromgame.com/imgs/1288134528-IMG_2762[1].JPG (http://img.removedfromgame.com/imgs/1288134528-IMG_2762[1%5D.JPG)
Editor (don't worry, it'll change a lot, but basically, that blank line on top is where the program name and the main menu will be):
http://img.removedfromgame.com/imgs/1288134642-IMG_2763[1].JPG (http://img.removedfromgame.com/imgs/1288134642-IMG_2763[1%5D.JPG)
Typing random stuff:
http://img.removedfromgame.com/imgs/1288134684-IMG_2766[1].JPG (http://img.removedfromgame.com/imgs/1288134684-IMG_2766[1%5D.JPG)
Scrolling:
http://img.removedfromgame.com/imgs/1288134721-IMG_2768[1].JPG (http://img.removedfromgame.com/imgs/1288134721-IMG_2768[1%5D.JPG)
Any suggestions?
EDIT: WHOA, didn't realize the pics were so big :P Sorry.
-
Looks pretty cool :) I also fixed your links so people can click them :)
-
Whoops, I keep forgetting about the URLs because Chrome automatically converts them for me :P
-
ah lol :P
Well it was showing up wrong so I added them in, although it took a little work with the [1] in there, bbcode didn't like it
-
ah lol :P
Well it was showing up wrong so I added them in, although it took a little work with the [1] in there, bbcode didn't like it
Hmm, removedfromgame added that in automatically. Maybe {AP} should change that?
-
really? it hasn't done that to me yet
-
Strange this is the first time I see that happen. Maybe the IDs were duplicate or something :P
Glad you're still working on this by the way. :)
-
Yeah, unfortunately with me, i know all the TiOS shortcuts, so Sub() is [Catalog] [T] [Up] [Up] and a String is [Vars] [7] [String#] and all the things like that. Thats the way i program unfortunately, so while i think this will be very helpful and useful for many people, i just cant use it myself. But dont let that discourage you! I see so much promise in this program, and the Calculator really does need a better editor.
Most of this also applies to me, but I think I might be able to relearn. Undoing five years of habits and all that. If it was really, really good I'd use it. *nudge*
-
Yeah kinda same here, although I haven't coded TI-BASIC/Axe in so long that I might have lost some of those habits partially :P
-
[2nd][Alpha][1][Alpha][sin][MATH][^][Alpha][,][2nd][Alpha][0][/][sin][0][4][7][7][Alpha][.]
lolwut ;)
-
[2nd][Alpha][1][Alpha][sin][MATH][^][Alpha][,][2nd][Alpha][0][/][sin][0][4][7][7][Alpha][.]
lolwut ;)
Did you do a typo or something? Because that combination appears to do nothing from the homescreen ???
-
[2nd][Alpha][1][Alpha][sin][MATH][^][Alpha][,][2nd][Alpha][0][/][sin][0][4][7][7][Alpha][.]
lolwut ;)
I think you were trying to say "YEAH, ME TOO", but you have a superlative alpha between the [1] and [sin].
-
Yeah that's what I think, because typing this key combination as he wrote it gets me stuck in the MATH menu for a while.
-
You need lowercase enabled.
-
Oh, that might be why. Btw off-topic note, lowercase enabling/disabling/lock is weird on the TI-85 X.x
-
yeah, lowercase. It's always enabled for me due to constant running of MOS and Axe :P
-
Back on topic, why don't you ask Benjamin Moody how he made Mimas? I LOVE MIMAS!!!! (Sorry, overkill) Mimas lets you edit each line by itself, and it is surrounded by a rect. Check it out HERE (http://www.ticalc.org/archives/files/fileinfo/431/43140.html).
-
Back on topic, why don't you ask Benjamin Moody how he made Mimas? I LOVE MIMAS!!!! (Sorry, overkill) Mimas lets you edit each line by itself, and it is surrounded by a rect. Check it out HERE.
Yep, I've used Mimas, and I really like the GUI. I'm thinking of taking some ideas from it (like the box around the current line).
-
Back on topic, why don't you ask Benjamin Moody how he made Mimas? I LOVE MIMAS!!!! (Sorry, overkill) Mimas lets you edit each line by itself, and it is surrounded by a rect. Check it out HERE (http://www.ticalc.org/archives/files/fileinfo/431/43140.html).
Hm... In the overall, what is Mimas? I have no idea lol, gotta check the thread
EDIT: Mimas is an integrated development environment for writing Z80 assembly programs on the calculator (no PC or other tools required.) It supports libraries, multi-pass assembly, separate code/data segments, a compact bytecode source format, an extensive library of built-in constants, and more. This version fixes a serious bug in the assembler (spurious "symbol-redefined" errors and occasional crashes) and some minor bugs in the conversion tools.
:oooo Nice, downloaded
-
Back on topic, why don't you ask Benjamin Moody how he made Mimas? I LOVE MIMAS!!!! (Sorry, overkill) Mimas lets you edit each line by itself, and it is surrounded by a rect. Check it out HERE (http://www.ticalc.org/archives/files/fileinfo/431/43140.html).
Hm... In the overall, what is Mimas? I have no idea lol, gotta check the thread
EDIT: Mimas is an integrated development environment for writing Z80 assembly programs on the calculator (no PC or other tools required.) It supports libraries, multi-pass assembly, separate code/data segments, a compact bytecode source format, an extensive library of built-in constants, and more. This version fixes a serious bug in the assembler (spurious "symbol-redefined" errors and occasional crashes) and some minor bugs in the conversion tools.
:oooo Nice, downloaded
please stay on topic
-
UPDATE:
Finally managed to get a demo of this thing off my calc (thanks to qazwsx988 for uploading). Here (http://ourl.ca/7937/142341) it is!
It shouldn't contain any bugs that would crash your calc, but DO NOT GO DOWN BEYOND THE SCREEN LIMIT VERTICALLY. I haven't added vertical scrolling yet, and TI's Text( routines corrupt data if they get cut off by the bottom of the screen. Horizontal scrolling works fine, though, except for an annoying glitch where the line turns blank in certain conditions :P
-
Nice, and I assume qazwsx988 is your friend, right?
I'll try it when I get some time. What does it add in this version?
-
Nice, and I assume qazwsx988 is your friend, right?
I'll try it when I get some time. What does it add in this version?
Not much, it's just a demo of how editing will work. But it's really old too (I've since deleted and restarted the project from scratch, and I'm way past where the demo shows :D).
-
Ah I see. Are you planning to post some images of what you have so far?
-
Yeah, I'll do that later. The new version allows typing tokens with multiple chars (like pressing SIN gives you sin( instantly). Which also means I'm pretty close to adding copy/pasting :D
-
Oh this is cool. I myself am used to inserting tokens so this will speed me up while coding if I use this.
-
This sounds like it'll be phenomenal once it's done...and it'll probably be pretty bad ass even before it's done! I can't wait! :D
-
This sounds like it'll be phenomenal once it's done...and it'll probably be pretty bad ass even before it's done! I can't wait! :D
Yes it will, phenomenal.
-
I don't think I'd even know where to start for something like this. I'd probably butcher it within the first 100 lines of code because of my lack of organization :P
-
I don't think I'd even know where to start for something like this. I'd probably butcher it within the first 100 lines of code because of my lack of organization :P
You have not seen my code :P
But unfortunately (or fortunately, depending on what you want ;D), this is on hold until I get a demo of Contra out.
-
Is this still being worked on? Sorry, didn't see the last bit of the post above me <_<
-
Theoretically this is still active, but I've really got a lot of things to do.
-
You could release the source and let others help.
-
You are making an axe IDE... in axe...
AXECEPTION
great work! ;D
-
You are making an axe IDE... in axe...
AXECEPTION
great work! ;D
I don't really know if this project is still alive, hence the last post date :)
-
You know, I've actually been working on this halfheartedly for a few days. So if no one is working on it, I may very well pick it back up soon.
Maybe alive
-
Hopefully. It would be too awesome. I would so use it. Don't even question me.
-
I guess this will be my next project revival then, if people want to see this running :)
-
I want to see this running, so please make it live!
It wants to have a beating heart :P
-
Nice! Look forward that!
-
is this project still worked on?
(sorry for necroposting again)