Gunstar Posted February 28, 2012 Share Posted February 28, 2012 This is all starting to look pretty darn incredible, I can't wait for the GUI much longer, therefore I demand you guys quit your day jobs and go on welfare so you can do the GUI full-time! Quote Link to comment Share on other sites More sharing options...
Stormbringer Posted February 28, 2012 Share Posted February 28, 2012 This is all starting to look pretty darn incredible, I can't wait for the GUI much longer, therefore I demand you guys quit your day jobs and go on welfare so you can do the GUI full-time! Uhhh.... you might want to retract that demand.... Quote Link to comment Share on other sites More sharing options...
flashjazzcat Posted February 28, 2012 Author Share Posted February 28, 2012 Neither retraction nor request required... been out of work for ages. Development couldn't get any faster than it's been for the past year... it'll only get slower when I do eventually find a job. Quote Link to comment Share on other sites More sharing options...
+MrFish Posted February 28, 2012 Share Posted February 28, 2012 This is all starting to look pretty darn incredible, I can't wait for the GUI much longer, therefore I demand you guys quit your day jobs and go on welfare so you can do the GUI full-time! Thanks, we appreciate the interest. "Coding full-time on the Atari" = "Welfare", is probably not too far off. I've been fortunate enough to have more time to devote to this lately, and coming up with a method for converting fonts from other platforms to a format that can be used on the Atari has been one of the results. I only wish there was more time and less to be done, but considering we've only been working on this for one year, and the fact that Jon has been busy with many other projects, I think we've made good progress. I was hit with some pretty heavy personal tragedies last year too, which slowed my interest in coding and doing artwork way down for quite a few months. Quote Link to comment Share on other sites More sharing options...
Kylev Posted February 29, 2012 Share Posted February 29, 2012 MrFish & FlashJazzCat, The work you have already done is absolutely incredible. I only wish I had half your talent and the time to put it to good use. Keep up the good work, both of you. It will be exciting to see this project completed. Russ Quote Link to comment Share on other sites More sharing options...
+MrFish Posted February 29, 2012 Share Posted February 29, 2012 It will be exciting to see this project completed. "Completed" is surely a longggggggggggggggggggggggggggggg ways off... but, although I'm not usually one to make predictions, by this time next year I think a lot of questions will be answered, at least. Quote Link to comment Share on other sites More sharing options...
flashjazzcat Posted February 29, 2012 Author Share Posted February 29, 2012 (edited) Well, I've managed to answer a lot of my own questions already. A lot of this pondering and uncertainty (and the need to design very radical solutions to certain problems) is in the past now, and progress depends in no small part on sheer coding hours. So time-frames are indeed harder than ever to come up with, since "I'm coding a GUI for the A8" cuts little ice with the rent-man or the electricity board (although the wife sees a certain amount of mystique in it). If as much progress as we managed between February - June last year is made this year, we should be in a good place in the Summer, and able to answer a lot of those questions MrFish alludes to. I reckon it'll easily take three months to get the system onto a cartridge and running resources out of extended RAM (this is the next urgent job). That should have been the first job, but who knew... Anyway, when that's done, and we have a dialogue manager, I believe things will come together pretty fast (after all, once the tremendous challenges of memory management are overcome, there's really not such a vast number of visual elements still to add before we have a reasonably complete UI). Edited February 29, 2012 by flashjazzcat Quote Link to comment Share on other sites More sharing options...
fibrewire Posted February 29, 2012 Share Posted February 29, 2012 If it's any consolation, I think that a reasonably complete GUI with some publications in embedded markets will surely land Jon a six-figure job. Keep up the good work! Quote Link to comment Share on other sites More sharing options...
flashjazzcat Posted February 29, 2012 Author Share Posted February 29, 2012 (edited) Thanks - it would be nice to think that this project could lead to good things. I'm aiming at a job in programming, but I need to update my severely outdated programming vocabulary. OK - here's a video (looped three times; the demo can't respond to client redraw events yet) of the renderer drawing characters with transparent backgrounds: http://youtu.be/_tD0uGa3sEM It's appreciably faster than the original, largely because the shorter characters have a built-in vertical render offset (this makes the files smaller, but was primarily intended to aid rendering speed). MrFish pointed out to me last night that ninety per cent of the time, there's no need to draw an opaque background when rendering a character, since the they've usually already had a background drawn behind them anyway (althogh we can preserve the opaque-background functionality for when it's needed elsewhere). It's as well we had that discussion, since I had become totally lost in the technicalities and was oblivious to this rather obvious optimisation, which removes the need to vertically pad a character's bounding box. Still clipping to do, but I don't think it will impact massively on performance. I'm also considering a stripped-down renderer for UI elements, so those menus might get even faster. Edited February 29, 2012 by flashjazzcat Quote Link to comment Share on other sites More sharing options...
w1k Posted February 29, 2012 Share Posted February 29, 2012 faster then before Quote Link to comment Share on other sites More sharing options...
dmlloyd Posted February 29, 2012 Share Posted February 29, 2012 Any possibility of having a larger scrolling virtual desktop area, especially with 130XE-style machines? Quote Link to comment Share on other sites More sharing options...
JamesD Posted February 29, 2012 Share Posted February 29, 2012 Performance doesn't look a lot different than the original Mac, but then the Mac was driving a higher res display. Quote Link to comment Share on other sites More sharing options...
MEtalGuy66 Posted February 29, 2012 Share Posted February 29, 2012 Heh. The mac also had an 8mhz 16bit CPU and a 16bit system architecture.. Quote Link to comment Share on other sites More sharing options...
+MrFish Posted February 29, 2012 Share Posted February 29, 2012 Heh. The mac also had an 8mhz 16bit CPU and a 16bit system architecture.. I wonder if any of the 6809 prototypes are still in existence? Quote Link to comment Share on other sites More sharing options...
ivop Posted February 29, 2012 Share Posted February 29, 2012 are the menus cached or re-rendered each time the mouse hovers over? Quote Link to comment Share on other sites More sharing options...
+MrFish Posted February 29, 2012 Share Posted February 29, 2012 are the menus cached or re-rendered each time the mouse hovers over? They're rendered each time. We've discussed caching for systems with extra memory. Quote Link to comment Share on other sites More sharing options...
fibrewire Posted February 29, 2012 Share Posted February 29, 2012 Why bother caching with this kind of performance! Quote Link to comment Share on other sites More sharing options...
flashjazzcat Posted February 29, 2012 Author Share Posted February 29, 2012 Any possibility of having a larger scrolling virtual desktop area, especially with 130XE-style machines? I'd jump at the chance to implement something like this using the A8's hardware scrolling, but sadly we can't rely on Antic banking being available and therefore the whole desktop bitmap would have to be in main memory, and there just isn't room. We could achieve it by blitting stuff in and out of extended RAM, but it wouldn't be the elegant solution it should be. are the menus cached or re-rendered each time the mouse hovers over? They're rendered each time. We've discussed caching for systems with extra memory. Why bother caching with this kind of performance! Well, quite. Caching was suggested at one stage, but I see little point now. Back window client areas may prove to be a different matter... Quote Link to comment Share on other sites More sharing options...
flashjazzcat Posted March 3, 2012 Author Share Posted March 3, 2012 (edited) "Outline" text proved an interesting coding challenge: It uses a triple line-buffering system to OR sets of three lines into one another. The bitmap is also left and right shifted, before the original character bits are XORed into the resulting data. This works out quite nicely, as long as two extra "dummy" lines of zero bytes are introduced at the end of the character bit-stream. The idea is to efficiently simulate the rendering of the character offset by 1 pixel in vertical, horizontal and diagonal positions before stamping the original bitmap in the middle. I thought it well worth adding this effect, which was also present in Mac OS and and GEOS: The Mac's drop-shadow outline style would require quadruple line buffering and additional shifting. Needless to say the outline style is sufficiently hard work to warrant its own code sections, so as not to impinge on the performance of normal rendering. Edited March 3, 2012 by flashjazzcat 2 Quote Link to comment Share on other sites More sharing options...
AtariNerd Posted March 3, 2012 Share Posted March 3, 2012 Beyond my feeble comprehension, but marvelous all of the same. With performance like this, it really becomes much more than a novelty or a what if experiment, but a bonefide working system. Are you still looking into a RAMcart solution or would this work with a regular IDE or flash drive? Quote Link to comment Share on other sites More sharing options...
fibrewire Posted March 4, 2012 Share Posted March 4, 2012 What about the drop shadow from the menus? Do they use the same OR effect? Never mind, I've been up for 35 hours. I'm pretty useless whenever I'm on the forum after work. Quote Link to comment Share on other sites More sharing options...
flashjazzcat Posted March 4, 2012 Author Share Posted March 4, 2012 (edited) With performance like this, it really becomes much more than a novelty or a what if experiment, but a bonefide working system. Well, until the difficult undertakings of cartridge banking and extended memory management are completed, it can't be considered a working system. But the developments of the last couple of months have satisfied me that we have all the tools required to create a fast and responsive GUI on the A8. Today I'm working on a special unbuffered character renderer for use when no dynamic styling is active. This should significantly speed up the UI elements (where the only commonly used style is the very simple "greyed-out text"), and will ensure that file browser windows fill up with icon or list view content at the maxmum possible speed. Are you still looking into a RAMcart solution or would this work with a regular IDE or flash drive? Memory upgrades are so ubiquitous now that RAM availability is less of an issue. However, I hope to make a separate build which works on Steve Tucker's special RAMcart (there are also a few people who'd really like to see a version which will run on a 64K machine). In all cases, all the support files will be on the cartridge, so 128KB, a flash cart, and SIO or HDD storage will work. The ideal setup will be a RAM expanded machine with a SIDE cart (the GUI would replace the XEX loader on the cartridge). What about the drop shadow from the menus? Do they use the same OR effect? The drop shadows on the windows and menus are done simply by drawing lines offset by 1px on both axes. The vertical and horizonal line drawing routines are exceptionally fast. However, once the vertical line renderer is coded up to draw lines 2px thick, it'll be faster still. Edited March 4, 2012 by flashjazzcat Quote Link to comment Share on other sites More sharing options...
flashjazzcat Posted March 4, 2012 Author Share Posted March 4, 2012 Got the stripped-down character renderer working as fast as I can manage today, and here it is filling a window with simulated "real world" content: 3 Quote Link to comment Share on other sites More sharing options...
potatohead Posted March 4, 2012 Share Posted March 4, 2012 Damn. That looks perfectly usable to me. Very nice progress. 1 Quote Link to comment Share on other sites More sharing options...
JamesD Posted March 4, 2012 Share Posted March 4, 2012 Looks very good. It takes what? A second or less to draw all the text on that window? I've been watching some videos about the original Macs and they are definitely faster, but without having the two side by side doing the same thing it's difficult to say how much faster the Mac is. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.