flashjazzcat #3851 Posted December 5, 2020 1 hour ago, ivop said: Perhaps you can implement a priority system. Rectangle redraws of the currently open application get priority over background applications that are visible that want to redraw a rectangle. I believe Windows 95 had such system, that's why it felt way more snappy then X11 or MacOS at the time. It had other issues though Thanks - that's a pretty cool idea. With menu windows given an 'always render' priority, this could work out nicely and look good. The rectangle slice function should not cause any noticeable performance penalty even if called before opening and after closing menus. 6 Quote Share this post Link to post Share on other sites
bradc #3852 Posted December 9, 2020 @flashjazzcat is the software to a point that there could be some outside app development? Simple things to start fleshing out what is on the screen. Even if it's pretty crude. Might be frustratingly fun to dig in. 1 Quote Share this post Link to post Share on other sites
mytek #3853 Posted December 9, 2020 10 minutes ago, bradc said: @flashjazzcat is the software to a point that there could be some outside app development? Simple things to start fleshing out what is on the screen. Even if it's pretty crude. Might be frustratingly fun to dig in. Based on what I see when running the demo it appears that the basic API for handling the mouse and windows is already present, so I suspect that file handling would need to implemented before someone else could really do much beyond what is seen in the demo. Quote Share this post Link to post Share on other sites
flashjazzcat #3854 Posted December 9, 2020 2 hours ago, bradc said: @flashjazzcat is the software to a point that there could be some outside app development? Simple things to start fleshing out what is on the screen. Even if it's pretty crude. Might be frustratingly fun to dig in. Unfortunately not, since the entire API is semi-complete, subject to change, and not yet documented. The last time I worked on the GOS, I was procrastinating about what is basically yet another rewrite in order to move to the final driver model, and that rewrite is pending and essentially the next job on the list. All the 'apps' in the demo are packed into a ROM volume and since the positioning of window controls and such has to be done by trial and error, it is not much fun. I want to get people on board with it as soon as I can, and basically if I don't find time to advance things in the next year or so, I'll just open source it and let someone else do something with it, since it will be apparent by then that I just have too many projects running at the same time. 7 Quote Share this post Link to post Share on other sites
bradc #3855 Posted December 27, 2020 (edited) Ok, so I've just started to dig back into a bit of programming. Really, mainly, just messing around with the display lists, etc. I was digging into Gr8 and the question popped into my head, @flashjazzcat how in the heck are you doing the bit fiddling to draw what you are drawing in the GUI? How do you deal with the bit consistency when a component crosses a byte? Amazing, but seriously, how? I'm asking because I wanted to make an attempt to do a >40 column pseudo-text mode (Gr8) terminal using the tiny font (https://www.fontsc.com/font/tiny) mainly as an effort in self flagellation. Edited December 27, 2020 by bradc 1 Quote Share this post Link to post Share on other sites
flashjazzcat #3856 Posted December 27, 2020 1 minute ago, bradc said: How do you deal with the bit consistency when a component crosses a byte? Amazing, but seriously, how? I'll have to leaf through the code to provide a comprehensive answer (it's been a while), but key to the efficiency is a set of shift tables which quickly give you the data shifted into position in both the left and right bytes. 1 Quote Share this post Link to post Share on other sites
bradc #3857 Posted December 28, 2020 5 hours ago, flashjazzcat said: I'll have to leaf through the code to provide a comprehensive answer (it's been a while), but key to the efficiency is a set of shift tables which quickly give you the data shifted into position in both the left and right bytes. I think I have a solution that I’ve skimmed from the cc65 tgi implementation. It took me a bit to figure out what the assembly code was doing but I pretty sure I got it. pseudo code: bitpos_mask[] = 0b00000000, 0b00000001, ... a = xor(pixel, 0b11111111) a = and(a, bitpos_mask[bitpos]) pixel = xor(a, pixel) ... or something like that Quote Share this post Link to post Share on other sites
StickJock #3858 Posted December 28, 2020 Ah, the XOR-AND-XOR idiom. I used to use this as one of the white board questions when interviewing fw engineer candidates. Instructions are formatted as: Opcode Destination, Source XOR A, B AND A, #$0F XOR A, B What does it do? I would actually start with the triple XOR, and then erase the middle XOR and replace it with the AND to construct the above question. Triple XOR question: XOR A, B XOR B, A XOR A, B What does it do, and why might you want to do it this way? After those two questions, I would move on to the double skip and triple skip questions. SKIP A SKIP B X: Skip instruction skips the following one instruction if the condition is true. What conditions of A & B would cause the instruction at X to execute? Likewise for the triple skip: SKIP A SKIP B SKIP C X: If I had time, I might ask what the following series of instructions did. Only one candidate ever got this one right before our hour was up. DEC A, REG OR A, REG INC A AND REG, A Ah, good times.... Quote Share this post Link to post Share on other sites
Positron5 #3859 Posted December 28, 2020 XOR A, B AND A, #$0F XOR A, B In this example you keep the bottom nybble in A and replace the top nybble in A with the one from B. This technique is useful because it reduces memory access cycles. I saw it in atextbook about 3o years ago.😮 Quote Share this post Link to post Share on other sites
bradc #3860 Posted December 28, 2020 A bit more on xor: https://florian.github.io/xor-trick/ 1 Quote Share this post Link to post Share on other sites
flemingt #3861 Posted February 26, 2021 I just started playing with this today. it seems that the top bar (keeper/file/... etc.) responds to a mouse click and will cause the menu to cascade, but no other part of the interface responds to clicks. not the sub menus, not the icons on the desktop. Any idea as to what might cause that? Quote Share this post Link to post Share on other sites
flashjazzcat #3862 Posted February 26, 2021 13 minutes ago, flemingt said: Any idea as to what might cause that? Yep: nothing being coded up for it. Start the 'Profiler' and 'Jotter' from the system menu. The Profiler has a fully functional tabbed interface with buttons, scroll bars, lists, etc. Quote Share this post Link to post Share on other sites
TheNameOfTheGame #3863 Posted February 26, 2021 Dang! Every time this topic gets bumped I think "could this be it? Is it happening?" 5 Quote Share this post Link to post Share on other sites
Kyle22 #3864 Posted February 27, 2021 10 hours ago, TheNameOfTheGame said: Dang! Every time this topic gets bumped I think "could this be it? Is it happening?" Real Soon Now. Quote Share this post Link to post Share on other sites
danwinslow #3865 Posted February 27, 2021 There is no such thing as time just beads of now, like dew on a spiderweb shining in the morning sun GET TO WORK JON THIS HAS GONE ON LONG ENOUGH 1 Quote Share this post Link to post Share on other sites
flashjazzcat #3866 Posted February 27, 2021 Yeah: time definitely seems to be an abstract concept in many respects at the moment. 4 Quote Share this post Link to post Share on other sites
StickJock #3867 Posted February 27, 2021 Time is an illusion. Lunchtime doubly so. - Douglas Adams 4 Quote Share this post Link to post Share on other sites
+DrVenkman #3868 Posted February 27, 2021 "Time is a flat circle" ~ Det. Rust Cohle Quote Share this post Link to post Share on other sites
flemingt #3869 Posted February 27, 2021 On 2/26/2021 at 4:44 PM, flashjazzcat said: Yep: nothing being coded up for it. Start the 'Profiler' and 'Jotter' from the system menu. The Profiler has a fully functional tabbed interface with buttons, scroll bars, lists, etc. That would do it. Thanks! 1 Quote Share this post Link to post Share on other sites
danwinslow #3870 Posted February 28, 2021 (edited) Ok, Jon, that's it. We're sending ninjas. When you least expect it. The good news is, they'll probably whack those Rottweilers on the way in. The bad news is, well, they are ninjas. Mean ones, with pointy bits. Edited February 28, 2021 by danwinslow 1 Quote Share this post Link to post Share on other sites
flashjazzcat #3871 Posted February 28, 2021 (edited) Most welcome they will be too. We noticed one of the neighbours across the road out in the street earlier this evening: she was bawling at the shit heads about the noise. I went out and joined in. One of them was saying 'I can't take the dogs out... I've got a bad leg'. 'That's a you problem, not a me problem,' I hollered. The other woman rang the police after one of them threatened to set a dog on her. The owner of the place eventually came back and started with a door-to-door soft-soaping exercise. Back-story about his ex dumping the dogs on him, but no actual solutions to the problem offered. 'i can't stop the dogs from barking,' he said (attempting to deal with Deborah instead of me). 'Not my problem,' I said calmly. To which he said 'Hey... No need to get aggressive'. Eventually I told him: 'Look: sort the problem out, and if you don't, I'll sort it out'. He didn't seem to like that. A moron. Tight vest, skinhead and flip-flops. Fucking social housing. I have a shit load of work to do and it's almost impossible to relax and focus on anything at all. Tomorrow I'll be phoning the council, but this is all bad energy. My mother's in hospital as well. We would like to move, preferably into Deborah's parents' house, but it's gonna be tough getting a mortgage. Her dad died a year ago and her mother's in a home with dementia, but what with the coof, etc, the sale of the house (which requires power of attorney) is still months away. Half of the proceeds go to the home, and the rest to the three siblings. That would leave us about 100K short to buy it back. Anyway: there you have it. Hopefully things will be peaceful enough that I can do my work and keep writing software. All I want in life is peace in which to work. Edited February 28, 2021 by flashjazzcat 2 1 2 Quote Share this post Link to post Share on other sites
danwinslow #3872 Posted March 1, 2021 Hmm, well, I'll have them 'speak' to your neighbor too. Anybody in flip flops, I'll say, and their little dog too. Then they will look at me in silence, and it'll feel awkward, and I'll pause a moment and then loudly say "FRIP FROPS", and they will nod excitedly amongst themselves. Then they'll trot off somewhere...burger king first most likely, then kill everyone in flip flops for a forty block radius. All that aside, sorry you're going through this kind of irritation, and I hope it passes quickly. Be well. 1 Quote Share this post Link to post Share on other sites
TheNameOfTheGame #3873 Posted March 1, 2021 (edited) I have moved a couple of times in my lifetime due to "arsehole" neighbors who never seem to have the self-awareness to understand they are disturbing others. After much reflection, I think it is some genetic fault in them haha. I would surely not disturb others intentionally and would remediate matters if I was. The ones with the crazy dogs seem to think their little pooches can't possibly be bothering anyone since they don't seem to have the sensory facilities to process it. I love dogs and have one now, but I also totally recognize some dogs have mental illness and will never be compatible with human communities. I've seen some that bark non-stop 24/7. Thankfully not around my living space but geez. It is sad, but it is a just reality that some dogs can't be in a neighborhood. No one wants to hear that opinion or talk about it, but it is a sad fact. Dogs can be mentally ill just as much as humans, especially if they are mistreated or have tortuous living conditions. And then some dogs are just born bad and it is in their nature...sound familiar? My advice, if the situation can't be resolved, move and move on. Life is too short. Edited March 1, 2021 by TheNameOfTheGame 1 Quote Share this post Link to post Share on other sites
flashjazzcat #3874 Posted March 1, 2021 (edited) Yes: I found it hilariously ironic that this dick-head said 'I wouldn't ask anyone else here to get rid of their dogs' (not that anyone suggested this). 'Why would I?' I said. 'I never hear anyone else's dog'. It's pretty much the same with kids. I politely asked the son of the neighbour on the other side to stop bouncing his football up my front path and off the front door some years ago, and the fact I did so not only triggered the parents, but seems to have passed into neighborhood folklore as evidence of what an intolerant son of a bitch I must be. I rather like Judge Judy's take on this kind of 'my kid/dog would never...' business. Namely: 'Don't visit your own stupidity on others'. Edited March 1, 2021 by flashjazzcat 1 2 Quote Share this post Link to post Share on other sites
+bf2k+ #3875 Posted March 1, 2021 I understand perfectly FJC. I too am an intolerant SOB because I trimmed my neighbor's tree in order to keep it from touching the roof of my house. 3 1 Quote Share this post Link to post Share on other sites