When your OS goes crazy - Screenshots

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Antti
Member
Member
Posts: 923
Joined: Thu Jul 05, 2012 5:12 am
Location: Finland

Re: When your OS goes crazy - Screenshots

Post by Antti »

My new console scrolling did not work.
Attachments
Console scrolling.
Console scrolling.
User avatar
Satoshi
Member
Member
Posts: 28
Joined: Thu Sep 13, 2012 2:18 pm

Re: When your OS goes crazy - Screenshots

Post by Satoshi »

err.png
err2.png
Trinix (written in D) https://github.com/Rikarin/Trinix
Streaming OS development https://www.livecoding.tv/satoshi/
klange
Member
Member
Posts: 679
Joined: Wed Mar 30, 2011 12:31 am
Libera.chat IRC: klange
Discord: klange

Re: When your OS goes crazy - Screenshots

Post by klange »

@Bloodman: That first screenshot looks like your shell is falling!


This odd little graphical glitch shows up in my login process most of the time:

Image

Essentially, the login manager runs under the window compositor in a single full-screen window. It closes that window during the login process and, until the "wallpaper" app starts, the compositor has nothing to draw.
phillid
Member
Member
Posts: 58
Joined: Mon Jan 31, 2011 6:07 pm

Re: When your OS goes crazy - Screenshots

Post by phillid »

Another buggy piece of text screen scrolling code...
On my test machine (not in Bochs), this looks way cooler (couldn't get a photo sorry). At first I was just bamboozled. How could something so accidental look so cool? :wink:


:D Phillid
Attachments
BadScrollText.PNG
phillid - Newbie-ish operating system developer with a toy OS on the main burner
User avatar
Griwes
Member
Member
Posts: 374
Joined: Sat Jul 30, 2011 10:07 am
Libera.chat IRC: Griwes
Location: Wrocław/Racibórz, Poland
Contact:

Re: When your OS goes crazy - Screenshots

Post by Griwes »

Somehow broken backbuffer-powered scrolling on real hardware - on emulators fails in less pretty way :D

Image
Reaver Project :: Repository :: Ohloh project page
<klange> This is a horror story about what happens when you need a hammer and all you have is the skulls of the damned.
<drake1> as long as the lock is read and modified by atomic operations
CWood
Member
Member
Posts: 127
Joined: Sun Jun 20, 2010 1:21 pm

Re: When your OS goes crazy - Screenshots

Post by CWood »

Nothing really to look at, but the concept is a good laugh.

I've been chasing a bug or 15 lately, wherein I've not been able to push to the stack, nothing is writing to memory, and none of my comparisons working. When I pop back from the stack, I get meaningless rubbish. Or so I thought. Just now, a mistyped command into the QEMU monitor revealed this gem:

"06/23/99\0\xfcH"

Wait a minute. "06/23/99", that looks like a date. Frantic searching through the source code...

The realization hit me like a train. I've set my stack up in the EBDA! :oops: :shock: Maybe now, my kernel will actually be called from the new bootloader. -.-
ben1066
Posts: 6
Joined: Sat Nov 12, 2011 11:42 am

Re: When your OS goes crazy - Screenshots

Post by ben1066 »

In my page fault handler I called my panic function. In my panic function I forgot to actually pass the file, line and description to kprintf but had the format string using them still. On QEMU this looked really boring.

Image
danielbj
Member
Member
Posts: 36
Joined: Thu Dec 16, 2010 3:08 pm

Re: When your OS goes crazy - Screenshots

Post by danielbj »

Just startet rewriting my OS (Unicorn OS)...
Going to protected mode = More stuff can go horribly wrong.

Can't wait to debug all the graphical errors :lol:

Daniel Broder Jensen
UNICORN OS
klange
Member
Member
Posts: 679
Joined: Wed Mar 30, 2011 12:31 am
Libera.chat IRC: klange
Discord: klange

Re: When your OS goes crazy - Screenshots

Post by klange »

I was digging through my image archives and remembered that I had these from a while back when I was working on window resizing:

Image

Image

Windows are stored in shared memory regions, and resizing them to be larger (usually) requires that a new buffer be allocated. Shared memory handling wasn't thread-safe. If the main thread managed resizing (ie., through command callbacks from the client applications - a window asking the compositor "resize me"), resizing would work fine: new memory regions would be allocated by the same thread that did all the rest of the shared memory handling. When resizing was made into a window manager action it moved into a different thread. Shared memory regions would be allocated on top of existing memory regions due to the threading bug. Particularly, the memory used by the wallpaper application would be overwitten (in the compositor) by references to the memory for the newly resized window. So if you, say, made nyancat really big, it would overwrite the background and you'd get this (dynamic) effect. It would also overwrite important structures used for handshaking, ultimately breaking the compositor's ability to spawn new windows.

One-line fix in the kernel, and everything worked smoothly.
ben1066
Posts: 6
Joined: Sat Nov 12, 2011 11:42 am

Re: When your OS goes crazy - Screenshots

Post by ben1066 »

Image
Was trying to use BGA, needless to say I gave up. I am now using GRUB 2 and VBE, seems to work alright, don't have to worry about PCI to get the address either.

EDIT: Think that issue was caused by assuming the wrong bitdepth, but that doesn't matter now since I no longer use BGA.
captmicro
Posts: 2
Joined: Sun Nov 18, 2012 7:16 pm

Re: When your OS goes crazy - Screenshots

Post by captmicro »

That feel when you try to add support for backspace in your console and it fails.
It's amazing what a single line of code can do.

Code: Select all

if (inputbuf[inputidx] == '\b') { lastBuf = kbBuf; inputidx--; continue; }
Image
User avatar
thepowersgang
Member
Member
Posts: 734
Joined: Tue Dec 25, 2007 6:03 am
Libera.chat IRC: thePowersGang
Location: Perth, Western Australia
Contact:

Re: When your OS goes crazy - Screenshots

Post by thepowersgang »

A slightly buggy blit function assuming that if it's blitting a full destination scanline, it's blitting a full source scanline. Breaks when there's a window that's wider than the screen is.
Attachments
20121129-AxWin3-BadBlit.png
20121129-AxWin3-BadBlit.png (9.61 KiB) Viewed 6559 times
Kernel Development, It's the brain surgery of programming.
Acess2 OS (c) | Tifflin OS (rust) | mrustc - Rust compiler
Currently Working on: mrustc
User avatar
Primis
Member
Member
Posts: 62
Joined: Fri May 14, 2010 3:46 pm
Libera.chat IRC: Primis
Location: New York, NY
Contact:

Re: When your OS goes crazy - Screenshots

Post by Primis »

This is my panic screen when called from a page fault:
void panicScreen(char *name, unsigned location, char *noteA, char *noteB, char *noteC);

Image
"On two occasions I have been asked, 'Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?' I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question."
Image
klange
Member
Member
Posts: 679
Joined: Wed Mar 30, 2011 12:31 am
Libera.chat IRC: klange
Discord: klange

Re: When your OS goes crazy - Screenshots

Post by klange »

While working on scrollback support in my terminal, I flipped a subtraction, resulting in this modern take on the classic garbage-text-framebuffer:

Image

The beauty of chaos, now with Unicode support.
Antti
Member
Member
Posts: 923
Joined: Thu Jul 05, 2012 5:12 am
Location: Finland

Re: When your OS goes crazy - Screenshots

Post by Antti »

Primis wrote:[...]
I like that! Just remove the cursor.
Post Reply