~g1n's blog

~g1n's blog

GRU Devlog 7 - keyboard, paging and WIP initrd in Orion

September 12, 2021 — G1n

This week I was improving Orion. First I made keyboard working, next day paging! Also I have added several new LibC functions. Today I have made scrolling working.

Last few days I was trying to make initrd working (this required heap implementing so I also did that but I don’t know if it works correctly). Currently it can only output /dev directory.

But I made something wrong with %x in printf and it can display weird chars first and then contents of files!

Hope you liked this post and if you would like to help me, contact me via email, xmpp or irc :)

tags: gru, orion

GRU Devlog 6 - yemu, published gxt and interrupts working in Orion

September 05, 2021 — G1n

This week I have published gxt, but it currently works as more (only down scrolling). Also it has a lot of of runtime error (Segmentation fault and others).

I have started working on yemu - Yet another EMUlator. It currently supports only 6502 proccessor with tiny number of instructions (LDA, LDX and LDY)

Today we have fixed interrupts in Orion and now I can implement timer, paging, keyboard and a lot of other things (thanks to quinn and smlckz from tilde.chat)

Hope you liked this post and if you would like to help me, contact me via email, xmpp or irc :)

tags: gru, gxt, yemu, orion

GRU Devlog 5 - First contribution from other person, coreutils and gxt (tui text editor)

August 29, 2021 — G1n

This week I had a lot of new ideas. But I think we have to work on something that have already been started. Also we now have one more coreutils rewrite (now on C to more easily port it to Orion in future).

Also i have started working on some projects that is not ready to be published yet. One of them is gxt - tui text editor.

Currently it can only move cursor and display files. But I think I’ll publish it next week when editing will be working.

Bad news is that my school lessons will start next week so maybe this devlogs won’t be published every week, because of not enough work done. But I don’t know, maybe I’ll have enough time.

Also good news - we have first contribution on codeberg to grsh. I didn’t know this person (because he is not from tildeverse :) ), so it is cool!

Hope you liked this devlog! If you can somehow help us, please contribute to our projects on tildegit/codeberg and/or message me in someway :)

tags: gru, coreutils, contribution, gxt, grsh

GRU Devlog 4 - more projects started, webpage for GRU and organizations on tildegit/codeberg

August 22, 2021 — G1n

In first days of this week I thought it will be not very productive. But I was wrong.

We now have webpage and organizations on tildegit/codeberg:


Also I am working on some new projects:

  • orcc - GRU/Orion Compilers Collection (but currently I am working only on lexer so it is not published yet)

  • gasm - GRU assembler (maybe will be part of GRU binutils. Also not published yet)

  • hexutils - I think hexdump, xxd and some other utils will be in this project

Also I tryed to advertize GRU on ~chat, some users liked us, so maybe soon someone will help me with all this.

And of course if you can help me please contact me in someway! :)

tags: gru, orcc, gasm, hexutils, webpage

GRU DevLog 3 - Orion and dreams about GRU software future

August 15, 2021 — G1n

This week I was trying to make interrupts, paging and other memory things working in Orion. I found this guide and tried to follow it without rewriting the whole project: http://www.jamesmolloy.co.uk/index.html

For now only Global Descriptor Table maybe working.

My current goals/dreams:

  • make filesystem (the coolest would be make Ext2 driver)

  • build GCC hosted compiler (this will help GCC understand our OS better)

My very future dreams:

  • make kernel, libs, ports and soft in different repos

  • make proper way to make “distros” on our kernel

  • make some website with mirror of ports scripts (like in Serenity OS but not in one repo with everything and tool for searching and downloading ports from that mirror)

  • maybe (if i will work a lot on this projects) I’ll make one more account on tilde.team for our organisation (domain name - gru.ttm.sh, is cool), but i’ll ask admins about that

Also I think Orion need new name because i found several projects with this name :)

Some ideas about the GRU name:

  • GRU rocks (or rocking) UNIX

  • GloRious UNIX

  • GloRious Union

If you can help me or have some ideas (name/names or anything else) contact me via email or any other type of contact (irc: g1n on tilde.chat, xmpp: g1n@hmm.st)

tags: gru, orion, dreams

GRU DevLog 2 - Orion

August 08, 2021 — G1n

This week I was developing new OS - Orion.

I don’t understand very basic osdev thing so I decided to make OS on C and Asm. Currently that can just output text (with printf arguments) on screen and serial. Now gros is much cooler than Orion - it has input, interupts and a lot of else. But maybe I’ll understand OSdev better. Currently working on GDT (global descriptor table) and than will work on interrupts and exceptions.

Of course if you can help me contact me throught email or in other ways!

tags: gru, orion

GRU DevLog 1 - gros sources published and add wc to grutils

August 01, 2021 — G1n

I didn’t make a lot work this week, so i think this devlogs should be renamed from “week number” to just “number” Ok, so what i did this week: - Add wc to grutils - Published gros - Add basic shell and some commands for gros

I know that is not a lot, but i was reading some osdev articles and books. Currently I would like to implement basic filesystem but i don’t know what to do.

Some goals for gros (I will add that to gros readme): - Filesystem (FAT or Ext2) - ELF or other executable formats - LibC (for compiling C programs) - Maybe basic networking but after all of that

All code in osdev wiki is for C so I need to implement it myself (or port existing rust code)

If you can help me somehow please contact me via email (g1n@ttm.sh) or in other ways (~chat irc, xmpp)

tags: gru, grutils, gros

GRU DevLog Week 0 - grsh, grutils and start of gros

July 25, 2021 — G1n

So I have started new project this week - grsh! It is shell written on Rust. Also, for now, other rewrites of coreutils are there.

What grsh can do for this moment: echo some variables (pwd, user, home, status of previous command using $?) and text; true, false, : - set status; pwd shows current dir, also comments and cd working, basic piping (thanks to that article and of course executing not builtin command also working.

Some grutils that I made: ls, touch, mkdir/rmdir, rm, grep, head/tail, yes, cat.

TODOs exist in grsh repo - so you can read there some of my plans.

Yesterday i have started GROS - OS on Rust! But I haven’t published code yet because it not have that minimum of funcionality that i want. Thanks for that site for teaching how to make basics - https://os.phil-opp.com

So it was first of GRU Devlog! Thanks for reading! If you want to contribute to some of that project write me an email - g1n@ttm.sh , or contact me in other ways

tags: gru, grsh, grutils, gros

Spartan protocol

July 05, 2021 — G1n

I started exploring spartan protocol and currently making my own client for it in bash - laconia. It is very WIP, but can open spartan.mozz.us, alexschroeder.ch, and local server on ~team generated from mine gemini capsule.

tags: spartan, protocol, gemini

Exploring BBSes

June 29, 2021 — G1n

I was exploring tomasino gopher capsule gopher.black and found monochrome bbs and created account there. I didn’t use other BBSes so it is my first. Maybe I will find that interesting.

tags: bbs, monochrome