movq

uninformativ.de

No description provided.

Das Firmenhandy sagt mir nach einem Update: „Dein Pixel kann jetzt noch mehr!“ Aha. Ist es jetzt ein Voxel? Kann’s jetzt mehr als 256 Farben? Oder was? Ich bin eindeutig nicht die Zielgruppe solcher Sprüche …

⤋ Read More
In-reply-to » In the process of temporarily removing and securing all my hard disks. They’ll be turning this building into a construction site for the next weeks/months. Lots of heavy drilling and hammering. Not sure what this means for spinning disks and I’d rather be on the safe side. 🫤

Typical construction site: Absolutely nothing happened so far. If there’s still nothing going on by Monday, I’m putting some of the disks back in.

⤋ Read More

ISS (the long “line” on the right) passing Venus and Saturn:

Image

Jupiter and its moons a few days ago:

Image

Not spectacular shots, but hey, it’s something.

Also saw the crescent Venus and Saturn’s rings through my scope (you know, the one for bird watching).

⤋ Read More
In-reply-to » Alright, I have a little 8086 assembler for my toy OS going now – or rather a proof-of-concept thereof. It only supports a tiny fraction of the instruction set. It was an interesting learning experience, but I don’t think trying to “complete” this program is worth my time.

@lyse@lyse.isobeef.org

Maybe with the very simplest of the easy ones it might be still reasonably straight forward

I did that and the compiled bootloader is now 439 bytes in size – the available space is 440 bytes. So, phew, it just fits now. 😂

⤋ Read More
In-reply-to » Alright, I have a little 8086 assembler for my toy OS going now – or rather a proof-of-concept thereof. It only supports a tiny fraction of the instruction set. It was an interesting learning experience, but I don’t think trying to “complete” this program is worth my time.

@lyse@lyse.isobeef.org Yeah, what else does one need? 😅

I added more instructions, made it portable (so it runs on my own OS as well as Linux/DOS/whatever), and the assembler is now good enough to be used in the build process to compile the bootloader:

Image

That is pretty cool. 😎

It’s still a “naive” assembler. There are zero optimizations and it can’t do macros (so I had to resort to using cpp). Since nothing is optimized, it uses longer opcodes than NASM and that makes the bootloader 11 bytes too large. 🥴 I avoided that for now by removing some cosmetic output from the bootloader.

⤋ Read More

Alright, I have a little 8086 assembler for my toy OS going now – or rather a proof-of-concept thereof. It only supports a tiny fraction of the instruction set. It was an interesting learning experience, but I don’t think trying to “complete” this program is worth my time.

The whole thing is just a learning project, I don’t want to actually make a usable OS. There are a few more things I want to have a look at and then I’ll eventually move on to 386/amd64 later this year (hopefully).

https://movq.de/v/d8f30cbe75/vid3.mp4

⤋ Read More

The editor can launch a new shell now:

https://movq.de/v/6ec68b50dd/los86-edit-shell.mp4

Trivial to implement but super useful. It allows for simple but meaningful dev cycles: Edit source code, run/test it, back to editor. That’s what I do in the video.

(The Brainfuck program is silly, but I got nothing else at the moment.)

The I/O cache is also getting better. All that back and forth doesn’t hit the disk at all, once cached.

This whole thing is much more fun and interesting when you run it from a real floppy disk. It’s a 5.25” floppy in the video (so it’s actually floppy 😅). Disk seek times can be catastrophic and you don’t notice any of this on modern disks.

⤋ Read More
In-reply-to » Hello @movq . Did you fixed jenny bug which causes fetching long ids from yarn instances on feeds like https://ciberlandia.pt/@marado.txt ? I'm asking because i want to store links in brackets on some of my posts and don't want to confuse jenny users

@doesnmppsflt@doesnm.p.psf.lt Not sure which bug you’re referring to. 🤔 (Did I forget?)

Those long IDs like (#113797927355322708) are simply part of that feed. Looks like the author just dumps ActivityPub IDs into twtxt. I think this used to work in the past, but the corresponding spec (https://twtxt.dev/exts/hash-tag.html) has been deprecated and jenny doesn’t support – actually, jenny never supported that.

jenny can only group threads by exactly one criterium (because it writes a Message-ID into the mail file) and that’s the regular twt hash. So, anything else, like people doing “#CoolTopic”, isn’t possible.

⤋ Read More

I’ve made it a habit to always put on my noise cancelling headphones when going to bed (without music). It’s pure heaven. 😂 Silence and darkness. I fall asleep within minutes. 😂 Good night. 😴

⤋ Read More

In the process of temporarily removing and securing all my hard disks. They’ll be turning this building into a construction site for the next weeks/months. Lots of heavy drilling and hammering. Not sure what this means for spinning disks and I’d rather be on the safe side. 🫤

⤋ Read More

For some reason, I was using calc all this time. I mean, it’s good, but I need to do base conversions (dec, hex, bin) very often and you have to type base(2) or base(16) in calc to do that. That’s exhausting after a while.

So I now replaced calc with a little Python script which always prints the results in dec/hex/bin, grouped in bytes (if the result is an integer). That’s what I need. It’s basically just a loop around Python’s exec().

$ mcalc 
> 123
         123        0x[7b]    0b[01111011]

> 1234
        1234        0x[04 d2]    0b[00000100 11010010]

> 0x7C00 + 0x3F + 512
       32319        0x[7e 3f]    0b[01111110 00111111]

> a = 10; b = 0x2b; c = 0b1100101
          10        0x[0a]    0b[00001010]

> a + b + 3 * c
         356        0x[01 64]    0b[00000001 01100100]

> 2**32 - 1
  4294967295        0x[ff ff ff ff]    0b[11111111 11111111 11111111 11111111]

> 4 * atan(1)
3.141592653589793

> cos(pi)
-1.0

⤋ Read More

The fact that the official Python docs don’t clearly state what a function returns, grinds my gears. This has cost me so much time over the years. You always have to read through a huge block of text.

Image

You could at least put a list of possible return values in there (always at the same location, please!), here’s a mockup:

Image

⤋ Read More

It needs to be said: Retrocomputing and old systems like DOS or OS/2 are fun and all, but a UNIX shell and its userland tools are the most powerful things I’ve ever seen. You can pry that from my cold dead hands. 😅

⤋ Read More

Okay, this is pretty cool. My 8086 toy OS running on my old Pentium from an actual floppy disk. 😍 I just love that sound and the feeling of using floppies. This brings back so many memories from my early DOS days.

The cp-unopt program copies a file and intentionally uses small unaligned reads/writes (hopefully triggers more bugs).

The I/O cache works “okay-ish”, I guess. When sha1 runs, it has to do a few reads for the first file and basically none for the second one. Both could have been served entirely from the cache, theoretically. (But even just having an I/O cache in the first place speeds up things dramatically.)

Notice how there’s an EA file. That’s a left-over from OS/2, because I copied some files to the floppy using OS/2. In other words, my FAT12 implementation survives OS/2 writing to it. 🥳 (But I guess it should show up as EA DATA.SF. My current code starts at the left and stops at the first space.)

https://movq.de/v/d4d50d3c74/los86-on-p133-from-floppy-small2.mp4

⤋ Read More

After taking a short break for Christmas business, I’ve worked on my little toy operating system for the 8086 again.

It understands the basics of FAT12 now. I’ve actually never sat down before to learn how FAT works. 🤦 Well, better late than never, I guess.

It can’t do subdirectories nor timestamps and I probably won’t implement that. One flat directory is good enough for my purposes and the OS has no notion of time, yet, anyway.

It’s really cool to be able to exchange files with the Linux host or other DOS VMs. 🥳

https://movq.de/v/21e91bafdb/los86-fat12.mp4

⤋ Read More
In-reply-to » Moin @arne, herzlich willkommen! Ich bin gerade auf https://uplegger.eu/blog/popelfinger gestoßen und war sofort sehr begeistert. :-D Mal sehen, ob ich die anderen an einem der Feiertage davon überzeugt bekomme, das mal auszuprobieren. :-)

@lyse@lyse.isobeef.org Hmmm:

Could not fetch: HTTPError('403 Client Error: Forbidden for url: https://uplegger.eu/twtxt.txt')

🤔

⤋ Read More

I’ve been making a little toy operating system for the 8086 in the last few days. Now that was a lot of fun!

I don’t plan on making that code public. This is purely a learning project for myself. I think going for real-mode 8086 + BIOS is a good idea as a first step. I am well aware that this isn’t going anywhere – but now I’ve gained some experience and learned a ton of stuff, so maybe 32 bit or even 64 bit mode might be doable in the future? We’ll see.

It provides a syscall interface, can launch processes, read/write files (in a very simple filesystem).

Here’s a video where I run it natively on my old Dell Inspiron 6400 laptop (and Warp 3 later in the video, because why not):

https://movq.de/v/893daaa548/los86-p133-warp3.mp4

(Sorry for the skewed video. It’s a glossy display and super hard to film this.)

It starts with the laptop’s boot menu and then boots into the kernel and launches a shell as PID 1. From there, I can launch other processes (anything I enter is a new process, except for the exit at the end) and they return the shell afterwards.

And a screenshot running in QEMU:

Image

⤋ Read More

I was today years old when I learned that Firefox supports custom per-domain CSS. Is this new? I thought I had tried a while ago and it only worked globally. 🤔

@-moz-document domain(movq.de)
{
    div { border: 1px solid red; }
}

Either way, I love that I don’t need a plugin for that. 🥳

⤋ Read More
In-reply-to » Goodbye Blender, I guess? 🤔

@lyse@lyse.isobeef.org Mostly small and simple stuff, like cable management, headphone rests, pill dispensers (that I didn’t end up using), … The most elaborate thing I made was that contraption for my keyboard, which is a bit hard to explain right now, so here’s some photos:

Image


Image

I didn’t end up using that, either. 🥴

In general, I print very little. So little that some of my supplies have simply gone bad, like that “3D LAC” (sprayable glue).

@aelaraji@aelaraji.com Yeah, I saw that when googling the issue. I’m on Linux, there are no DLLs to swap. I could use an older version indeed. 🤔 Let’s see if I can find some better alternative first. (Let’s face it, Blender is hard to use.)

⤋ Read More

Goodbye Blender, I guess? 🤔

Image

A bit annoying, but not much of a problem. The only thing I did with Blender was make some very simple 3D-printable objects.

I’ll have a look at the alternatives out there. Worst case is I go back to Art of Illusion, which I used heavily ~15 years ago.

⤋ Read More
In-reply-to » "A minimalist social network powered by plain text files" - my talk about #twtxt from #Piksel24 Festival is now on YouTube and slides can be found at http://darch.dk/twtxtalk-piksel

@sorenpeter@darch.dk

“A minimalist social network powered by plain text files”

My brain keeps shortening this to “a socialist network …” and then jumps to “uhh, large parts of the US won’t like this” … 🤦🤪

⤋ Read More
In-reply-to » Fuck me dead, what a giant piece of shit. On my Linux work laptop I have the problem that some unknown snakeoil "security" junk is dropping any IPv4 connections to ports 80 and 443. All other ports and IPv6 seem unaffected. I get an immediate "connection refused" when trying to estabslish a connection.

@lyse@lyse.isobeef.org

But then, why just block IPv4 and not also IPv6?

I’ll take “what’s the most overlooked thing in corporate networks” for 200. 😅

⤋ Read More
In-reply-to » I’ve been using Mastodon too much lately. The constant notifications are becoming too stressful. I really do prefer slow communication, like twtxt. ✌️

@bender@twtxt.net Well, so far, I’m using the standard web client. Haven’t found a great client yet. 🫤 Mastodon/Fediverse is also very different from twtxt, there are way more images/videos that I’d like to see – a TUI client like toot wouldn’t work for me.

Dunno, maybe I’ll make some changes in this area after christmas. Try self-hosting again or something like that …

⤋ Read More