*bump* Scrolling wraps, from the bottom to top and vice versa, at cost of 42 bytes on Page 0. In other words, press [+] at the bottom of the desktop list to go to the top, and [-] at the top screen of the desktop to go to the bottom.
calcdude84se wrote:
Cool! How much space is left on each of the three pages, anyway?
Code:
Assembling...
Pass 1 complete. (1513ms).
-Page 0----------------------
> Page 0: vectors.asm is 1118 bytes long
> Page 0: ionlibsp0.inc is 597 bytes long
> Page 0: dcslibsp.inc is 1247 bytes long
> Page 0: fonts.inc is 1505 bytes long
> Page 0: basicprg.inc is 424 bytes long
> Page 0: detecttype.inc is 592 bytes long
> Page 0: vatfind.asm is 526 bytes long
> Page 0: runprog.asm is 2147 bytes long
> Page 0: progchain.asm is 224 bytes long
> Page 0: sortalph.inc is 430 bytes long
> Page 0: ap.asm is 244 bytes long
> Page 0: easteregg.asm is 736 bytes long
> Page 0: mouse_p0.asm is 628 bytes long
> Page 0: fldsv.asm is 471 bytes long
> Page 0: main.asm is 4704 bytes long
-Page 1----------------------
> Page 1: moslibs.asm is 1555 bytes long
> Page 1: ionlibsp1.inc is 478 bytes long
> Page 1: guitools.inc is 2623 bytes long
> Page 1: guimouse.asm is 4164 bytes long
> Page 1: mouse_p1.asm is 649 bytes long
> Page 1: startmenu.inc is 1308 bytes long
> Page 1: cedit.asm is 467 bytes long
> Page 1: apguis.asm is 1712 bytes long
> Page 1: propstring.asm is 115 bytes long
> Page 1: datap1.inc is 2176 bytes long
-Page 2----------------------
> Page 2: vectorsp3.asm is 24 bytes long
> Page 2: ionlibsp2.inc is 597 bytes long
> Page 2: parserhook.inc is 219 bytes long
> Page 2: c3_hook.asm is 981 bytes long
> Page 2: c3_std.asm is 1021 bytes long
> Page 2: c3_util.asm is 3481 bytes long
> Page 2: c3_xfn.asm is 2471 bytes long
> Page 2: c3_pfn.asm is 1628 bytes long
> Page 2: c3_cfn.asm is 2716 bytes long
> Page 2: dcsblibs.asm is 2403 bytes long
Page 0 is 15724 bytes long (660 bytes to spare)
Page 1 is 15250 bytes long (1134 bytes to spare)
Page 2 is 15544 bytes long (840 bytes to spare)
Pass 2 complete. (939ms).
*bump* The GUIRMultilineText, GUIRTextIn, and GUIRPassIn have been modified to use the TI-OS's edit buffer functionality for editing sessions, so that character insertions and deletions will go much, much faster, especially for those with many programs on their calculator or modifying a large document. As an added bonus, all the necessary changes only lost me a total of 15 bytes after removals and modifications to existing code.
elfprince13 wrote:
Very cool. How does the edit buffer work (particularly as compared to what you were doing)?
It basically moves the program (in this case, the gui7 appvar) to the end of the series of user data in memory, then allocates all the free RAM at the end of it into it. Therefore, you can insert and delete with simple lddr/ldirs instead of insertmem and delmem, which saves lots and lots of speed on calculators with many programs. It moves to the edit buffer when you click in one of the three text input types, then closes the buffer when you click to go back to moving the mouse around.
Edit:
* Err 503 triggered by header of DCS program run from Homerun causes return to DCS desktop, not homescreen (thanks qazz)
** Preliminary fix in place on Prhh pending assembly and testing
** Repair verified.
* Returning 0 - the AP routines aren't returning HL as 0 if you cancel. (wouldn't it be easier to return z with xor a and nz with or 1) (from Anakclusmos)
** APGUI routines use GetRAMNameAP to figure out cancelling; valid for Open, valid for SaveAs?
** Fix: Updated documentation to note that they no longer return 0, now they only return 0 if no AP file is open. If nothing was opened (or saved), the outputs might point to an existing file.
Last vestiges of Link and Power items removed from DCS Menu, saving a total of 106 bytes. I had to reconfigure the sideways text to say DCS7 instead of Doors CS 7 in order to deal with the fact that the menu is only 25 pixels high now instead of 41.
Calcdude, any luck on verifying if the third of your bugs is still extant? Everyone else, any reports? I'll post news tomorrow about the fact that I'm pushing back 6.8 beta to not be released Tuesday so I can continue bug searching and bug eradicating.
Edit: Error codes added for BASIC exec errors, 3 characters each, at a total cost of 164 bytes, including the code necessary to display and an improvement to make 502 and 503 errors show the name of the missing program. The wiki page Error Codes has been updated with the three-char shortcode for each error. Please feel free to critique them or suggest clearer alternatives. Screenage sauce:
Calcdude, any luck on verifying if the third of your bugs is still extant? Everyone else, any reports? I'll post news tomorrow about the fact that I'm pushing back 6.8 beta to not be released Tuesday so I can continue bug searching and bug eradicating.
Edit: Error codes added for BASIC exec errors, 3 characters each, at a total cost of 164 bytes, including the code necessary to display and an improvement to make 502 and 503 errors show the name of the missing program. The wiki page Error Codes has been updated with the three-char shortcode for each error. Please feel free to critique them or suggest clearer alternatives. Screenage sauce:
Cool! Where can I download 6.7.5 (Kerm told me that that was the latest version in a txt conversation Saturday), or can I?
Xeno_Cre8or wrote:
Cool! Where can I download 6.7.5 (Kerm told me that that was the latest version in a txt conversation Saturday), or can I?
The last one I released was 6.7.4, in the previous page of this thread. I'll release 6.7.5 today though, since I'm going to write news that I'm pushing 6.8 back until I clear out my todo and bug lists.
In relation to the bugs involving GUIRTextMultiline mentioned earlier, I can confirm that 1 and 2 have been fixed as of 6.7.4. #3, which involves random garbage at the beginning of the input area, has been unable to be replicated by me, so I'm assuming it was fixed along the way with the others, or that it's been made rare enough not to be a worry.
Kerm, I mentioned this on IRC, but to mention it again: if the calculator can run at 15MHz, can you enable that and speed up background calculations for the GUI? (Not speed up the mouse or anything, just the calculations)
Kerm, I mentioned this on IRC, but to mention it again: if the calculator can run at 15MHz, can you enable that and speed up background calculations for the GUI? (Not speed up the mouse or anything, just the calculations)
calcdude84se wrote:
In relation to the bugs involving GUIRTextMultiline mentioned earlier, I can confirm that 1 and 2 have been fixed as of 6.7.4. #3, which involves random garbage at the beginning of the input area, has been unable to be replicated by me, so I'm assuming it was fixed along the way with the others, or that it's been made rare enough not to be a worry.
Huzzah! I think I actually managed to replicate that bug at one point during testing without realizing it, and I'm pretty sure I managed to fix it among the others. Thanks again for all your hard work on this.
calcdude84se wrote:
Kerm, I mentioned this on IRC, but to mention it again: if the calculator can run at 15MHz, can you enable that and speed up background calculations for the GUI? (Not speed up the mouse or anything, just the calculations)
Will do, I added that to the To-Do list.
*bump* Saving of current folder and scroll location is now implemented. This means that when you delete a program, or run a program, or quit to the TI-OS, whenever you return to the desktop you'll be back at the exact same place you left. If a folder gets deleted somehow, or you'd be past the end of the desktop because programs were deleted, then Doors CS will be smart enough to not put you in the middle of nowhere and recover gracefully. A screenshot:
Nice! My only complaint is that the screens blanks and redraws every time you delete/copy/paste files.
calcdude84se wrote:
Nice! My only complaint is that the screens blanks and redraws every time you delete/copy/paste files.
That's intentional, because if you deleted, inserted, or pasted before the current screen, in such a way that there are different or a different number of files before or on the current screen, Doors CS needs to recalculate a bunch of pointers into the VAT. Makes sense? There's unfortunately no good way around that. calcdude84se wrote:
Nice! My only complaint is that the screens blanks and redraws every time you delete/copy/paste files.
In my case, it's more the mouse cursor blinking when clicking stuff the loading one always being at the screen center, but I am curious if this is due to what Kerm just mentionned in the post above?
Otherwise, awesome progress Kerm!
Understood, Kerm. But do you have to clear the screen entirely? Can't you just overwrite it as necessary?
calcdude84se wrote:
Understood, Kerm. But do you have to clear the screen entirely? Can't you just overwrite it as necessary?
Ohh, I see what you're talking about. That screen clear is actually the sorting routine kicking in; I can easily rearrange things so that the sort doesn't clear the screen, I think. Let me look into it.
DJ Omnimaga wrote:
In my case, it's more the mouse cursor blinking when clicking stuff the loading one always being at the screen center, but I am curious if this is due to what Kerm just mentionned in the post above?
Otherwise, awesome progress Kerm!
Thanks DJ! Are you saying you have a problem with the hourglass always being at the center, or am I misunderstanding? Otherwise, awesome progress Kerm!
Request: remap the [clear] key to a backspace on text edit instead of H
EDIT: as per request, ok, so when you make an edit to a file in DocDE7 and then open the SaveAs Dialog then cancel it, you will lose all your edits.
observe:
EDIT: as per request, ok, so when you make an edit to a file in DocDE7 and then open the SaveAs Dialog then cancel it, you will lose all your edits.
observe:
In the interest of completing all of the To-Do items on my To-Do List and solve all the bugs on the same list, I have decided to push back Doors CS 6.8 beta from its original July 20th deadline (today) until August 1st or earlier, depending on how long each of the items takes. At this point, all of the major primary features for Doors CS 7 have been implemented in Doors CS, and almost all of the secondary features as well. All of the remaining To-Do items are minor fixes, and as I'm dealing with a current distribution of 606 bytes free on Page 0, 1202 bytes on Page 1, and 840 bytes on Page 2, I don't anticipate any sizeable additional features. Since Doors CS 6.7 was released, a bunch of new features and bugs have been implemented:
:: Plenty of optimizations for both speed and size, respectively making the shell feel faster and giving me more leeway for additional fixes and features.
:: Completed new sum(13) DCSB Lib function, facilitating attractive Menu()s in BASIC programs with minimal GUI effort.
:: Added [STO>] as method to break out of sum(12).
:: Expanded SE functionality within Doors CS desktop.
:: Repaired three bugs with GUIRTextMultiline scrolling calculations.
:: Adding scroll wrapping to DCS desktop. Scroll up at the top to go to the bottom, scroll down at the bottom to go to the top.
:: Moved GUIRTextLineIn, GUIRPassIn, and GUIRTextMultiline to an edit buffer for faster typing.
:: Reduced DCS Menu to three items: Display, About, Options.
:: Added more understandable BASIC Exec errors.
:: Added folder and screen saving so after using the Properties menu, running a program, or quitting, you start where you left off.
:: A plethora of bug fixes.
For your edification, especially for those who want to give sum(13) a try, you can download an informal release of the current internal beta (6.7.6) at the link below. If you give it a try, feel free to let me know about any bugs you find or feature suggestions that you have.
Download
Doors CS 6.7.6 Beta
From left to right: sum(13) in action, scroll wrapping, the new DCS Menu, and folder/scroll saving.
:: Plenty of optimizations for both speed and size, respectively making the shell feel faster and giving me more leeway for additional fixes and features.
:: Completed new sum(13) DCSB Lib function, facilitating attractive Menu()s in BASIC programs with minimal GUI effort.
:: Added [STO>] as method to break out of sum(12).
:: Expanded SE functionality within Doors CS desktop.
:: Repaired three bugs with GUIRTextMultiline scrolling calculations.
:: Adding scroll wrapping to DCS desktop. Scroll up at the top to go to the bottom, scroll down at the bottom to go to the top.
:: Moved GUIRTextLineIn, GUIRPassIn, and GUIRTextMultiline to an edit buffer for faster typing.
:: Reduced DCS Menu to three items: Display, About, Options.
:: Added more understandable BASIC Exec errors.
:: Added folder and screen saving so after using the Properties menu, running a program, or quitting, you start where you left off.
:: A plethora of bug fixes.
For your edification, especially for those who want to give sum(13) a try, you can download an informal release of the current internal beta (6.7.6) at the link below. If you give it a try, feel free to let me know about any bugs you find or feature suggestions that you have.
Download
Doors CS 6.7.6 Beta
From left to right: sum(13) in action, scroll wrapping, the new DCS Menu, and folder/scroll saving.
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.
» Go to Registration page
» Go to Registration page
Page 7 of 9
» All times are UTC - 5 Hours
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Advertisement