#Nullium

1 messages · Page 8 of 1

wild glen
#

what to do with unix programs tho the way they read flag stuff is probs hardcoded

gloomy musk
#

Isn't the format of flags/parameters up to the program to decide?

#

it's just that using a - is usually the most common way of doing it?

#

Or am I going insane KEKW

gloomy musk
#

okie thought so lol

hushed briar
#

void fuckshit()

#

If you know you know

wild glen
wild glen
#

GUESS WHAT ITS TIME FOR SLAB AND WHATEVER OTHER PARTIAL PAGE RESERVER ALLOCATORS trl

#

MUAHAHAHAHAHAHAHAHAH

#

(i will hate this)

hushed briar
wild glen
#

what defines as a vmm

#

i can map addresses (on demand :0) (probably :0) (idk i might need to address page faults :0)

hushed briar
#

Can you

#

Create address spaces

wild glen
#

uhhhh

#

i can map a shit load of addresses??? (ok i might have to finish my vmm (idk what defines as a finished vmm) i cant just evade it)

wild glen
#

uhhh idunno

#

i can map a bunch of pages i guess

hushed briar
#

Okay…

#

How do you manage virtual regions

wild glen
#

is that what i need or do i need to do it in a fancy way

hushed briar
#

You need some sort of vm region

#

Struct

wild glen
#

didnt you do like 1 gb of kernel and 3 gb of user?

hushed briar
#

Yeah

#

That’s the global address space though

wild glen
#

tho user is demand-paged iirc

wild glen
#

oh god programs need their own

hushed briar
#

Yes…

#

Every process needs an address space T

#

This is usually done by giving each process a page table

hushed briar
#

I mean

#

You’d start off with one

wild glen
#

ok reasonable

hushed briar
#

And allocate more as needed

#

Your vmm should take care of that

wild glen
#

k i guess

#

i might need the global addr space first

hushed briar
#

Yeah lol

wild glen
#

ok yeah the global addr space is simpler

#

freelists? trl

hushed briar
wild glen
hushed briar
wild glen
hushed briar
#

You need to be more specific

wild glen
#

i became a ▁▁▁▁▁▁▁▁▁ shill (idk what to shill)

#

anyways i retire from shilling

wild glen
#

WHY IS THIS "a stalemate"

#

I WOULDVE WON

#

istg chasing this stupid bot king around was a pain in the ass

#

bro does not want to fucking die

balmy stump
#

Me when my opponent plays the game

wild glen
#

i hope he just died trl

#

why did the round end with "a stalemate" here though

#

:'(

#

chess is evil

gloomy musk
#

Should've played Qc7# lol

#

or Re8#

#

or Qa8#

#

okay I'll stop now trl

#

Use CCA true

wild glen
#

i has been win (TM)

#

im a noob tho

#

(beginner(tm))

#

i want nullium chess NOW

gloomy musk
#

awesome sauce 😎

wild glen
#

i havent tried increasing the bot difficulty yet

#

i always end up in stalemates somehow

#

tfw the best multiplayer game has existed for a few thousand years

gloomy musk
#

I forgor what bot I got up to

#

ah, her apparently

wild glen
#

idk im on 400

#

still tho 1200 seems insane

gloomy musk
wild glen
#

mine is 0 i havent done any actual multiplayer game

#

i tried on my school laptop during study hall but then somehow the period ended or smth

sour pollen
hushed briar
#

Jkjk

#

I’m rated like 1700

#

And 1900 on lichess

#

My lichess is up to date I just haven’t played chess.com in a fat minute

gloomy musk
#

that's awesome!

wild glen
#

trapped him :/

#

revived windows 7 laptop

#

the cmos is dead and the battery is absolutely fucked

#

but like it works

#

dell latitude e6500

#

also pretend like i didnt test retro rocket basic on it some time ago trl

#

the fan sounds like someone's breathing ngl

#

i forgot it had visual studio on it

#

or no wait

#

no i remember but i still forgot

#

my short term memory is beyond done for

#

THE LICENSE EXPIRED NOOOOOOOOOOOOOOOOOOOOOOOOO

#

nevermind it booted

#

its time to look at my shitty old c code

#

with the file being a c++ file i think i just didnt use the features

#

the wifi chip on this thing is so ass

#

i reactivated vs tho

#

directx house

#

deadass went from this to making an os

#

i have a mouth and i can scream

wild glen
#

nullium on pentium 3?

#

i love laptops with the charging port on the back

#

idk why they're geniunuely peak

wild glen
#

humanity finally found out what to reconstruct

#

anyways ima do vmm stuff (address spaces)

wild glen
#

imagine windows 8 actually improved aero

#

make it even more beautiful

#

instead we got a fucking off brand ipad

#

they were going to just make it flat anyways

#

the beta versions have a flat aero

#

why didnt they at least keep flat aero it's like they deleted at least 2 years worth of their effort

#

apple's liquid glass somewhat brings back the idea of aero but it's still actual ass

#

the icons are still flat and corporate to shit

#

idk man

#

also there's ok progress on the vmm(?)

#

taskbar on the right is peak

#

not linux im just using a windows 7 laptop to type

untold nest
wild glen
wild glen
#

does a vmm just handle address spaces or does it do more

#

ok i assume thats all it can do

wild glen
#

github is privated im gonna move to codeberg for shits and giggles trl

wild glen
#

MUAHAHAHAHAHAHAHA

wild glen
wild glen
#

also git works like ass and its questionable for a website called GIThub

fluid moon
#

git is great, github sucks

#

git is the best VCS

wild glen
wild glen
#

these fucking michael softs

#

ngl i want a vcs in nullium that can be set up on files so they can be restored to their previous version later

#

maybe like mac time machine

wild glen
#

gnu nano my beloved

#

best terminal text editor

#

i started a vote on if i should port gnu freebsd or make my own coreutils

#

cool vote but ima make my own except nano

#

bash's gonna be ported later idk

#

i need to work on this morr

#

more

#

i need to think about that later and get my shit together first

wild glen
sour pollen
hushed briar
wild glen
#

as in on the hard drive

#

it is time to lock in and finish moving nullium trl

wild glen
#

i might make separate repos for the kernel and like coreutils or smth

#

how do you guys do folders that are like other repos

gloomy musk
wild glen
#

idrk how to make one tho ima search it up prob

wild glen
#

i figured out how to do submodules

#

yiy

#

[message contained codeberg links, plan switched]

#

i need to change all the github text now

#

time to vmm

wild glen
#

codeberg died

#

i cant push shit :(

#

these fucking Indie Programs working like Ass(TM) as Usual

wild glen
#

FUCK

wild glen
#

i crashed out so i moved to gitlab

#

lemme unprivate everything

#

wait the repos are still private

#

pardon me for big stupid

#

damn

#

ok done

#

im now on gitlab™ hopefully for the rest of this stupid project's life

#

also it's a group so i dont have to post multiple repos

#

quite convenient

wild glen
#

thread died :c

#

i need a break idk

wild glen
#

i set them up very weird probably

#

idk

wild glen
#

discord is recommending me custom themes like i can afford to use them

#

scumbag behavior

wild glen
#

ima finish my vmm then consider making a 64 bit version as well as a 32 bit one for the funnies

wild glen
#

i want to put windows xp on my thinkpad but linux dont want to read my fat32 usb???

#

why the fuck does it have windows 98 on it

#

hopefully balena etcher works

#

nevermind it doesnt like windows images

#

why am i talking about windows xp here

#

i tried gnome disks but it formatted my usb as fucking ISO9660

#

can i boot it

#

no

#

i cant boot ikt

#

i will never leave windows even if i try to :(

wild glen
wild glen
#

wimbows xp still die

wild glen
#

THEY INSTALLED MICROSOFT EDGE ON MY WINDOWS 7 LAPTOP

#

IT'S ON AUTORUN TOO

#

microsoft i hope you burn in fucking hell

#

viva la linux

#

if i want chrome then id fucking use chrome

#

which i do because supermium is goated ngl

wild glen
#

i slightly unfucked paging

#

my vmm is still a big stupid

#

my vmm is now working except it maps WAYYYY too much

#

it identity maps the whole fucking ram

#

this is goodn't

#

-# WHY CAN'T ENGLISH JUST USE N'T AT THE END

#

seriously why do we have to say shit like "i do not like this" instead of "i liken't this"

#

why framebuffer not in memory map

#

yay

wild glen
#

cant push repo :(

fluid moon
wild glen
#

i might get detention at school because i lost an id card

this is a vent where the FUCK am i getting 5 dollars to get a new one before i leave today

#

this is the dumbest fucking reason for that

#

assholes

wild glen
wild glen
#

i never even get homework

#

wtf am i gonna do in detention

fluid moon
wild glen
#

continue making nullium

wild glen
#

im getting a new id

#

yay

#

i probably dont have detention anymore

#

also apparently its free

#

1 hour over a 0 dollar piece of plastic

fluid moon
#

'merica

wild glen
fluid moon
#

detention is crazy

#

at least here in italy I've never seen anything like that

#

school could never force us to stay without our or the family permission

wild glen
#

like wtf this country ass

wild glen
#

what do i do next

#

can i finally move on from memory

#

can slab be saved for later

fluid moon
#

vmm fully ok?

fluid moon
wild glen
#

heap what

fluid moon
wild glen
#

no i dont have kmalloc

fluid moon
#

do you have address spaces and regions in your vmm?

wild glen
#

ok yeah definetely

fluid moon
# wild glen id say yes
struct Region {
  u64 start_addr;
  u64 size;
  RegionType type;
  RegionFlags flags;
  u64 physical_base;
  Region* next;
  Region* prev;
  bool is_mapped;
};
wild glen
#

start size and flags

fluid moon
#

you'll probably need the physical address too

wild glen
fluid moon
wild glen
#

(u32) physical start
(u32) virtual start
(u32) size
(u8 bitfield) flags

protected mode :/

wild glen
fluid moon
fluid moon
wild glen
fluid moon
#

LAPIC timer supremacy

wild glen
#

i have gdt, idt, timer, pmm and vmm

fluid moon
#

or HPET

wild glen
fluid moon
wild glen
#

i have a pit already

wild glen
fluid moon
wild glen
#

anyways what am i supposed to do next now

balmy stump
fluid moon
#

yeah PTE lookup better

wild glen
#

???

wild glen
fluid moon
# wild glen ???

you reverse the page mapping process to retrieve the physical address from the virtual one

wild glen
#

had to remake popkernel repo

#

im quite stupid trl

#

do i just map pages if i get a page fault

#

does the world end if i get a page fault

sour pollen
#

depends on what kind of region the page faulting address corresponds to and how you want to handle it

wild glen
sour pollen
wild glen
#

also yeah im doing simple anonymous memory stuff

sour pollen
#

what used chunk?

wild glen
sour pollen
#

you generally have some interface to map pages into an address space

wild glen
#

i do

sour pollen
#

you allocate a new physical address

wild glen
#

i already have one

sour pollen
#

and map it

wild glen
#

do i just call it at the page fault

sour pollen
#

yes

wild glen
#

oh ok fair

#

thanks

sour pollen
#

it will run the faulting instruction again after returning from the page fault

#

so it will just access the newly mapped page

wild glen
#

oh

#

understandable

wild glen
#

i have met triple fault

#

the destroyer of the kernels

#

anyways i allocated memory for big ass framebuffer

#

yay

#

i can use all of the pixels on my screen

#

wait no

#

terminal framebuffer btw

wild glen
#

people who just post gifs when you complain ONE time need to just die

#

"ragebait"

#

we can't have any good in this world

#

except me setting up all the memory managers trl

#

anyways i need to fix my vmm slightly again

hollow flare
#

how can vmm be THAT hard

wild glen
#

it breaks sometimes

hollow flare
#

that tracks

wild glen
#

also it was fixed an hour (or more) ago and i just have dementia

hollow flare
#

wild

wild glen
#

i forgor about heap as well

hollow flare
#

HOW

wild glen
#

idontknow

#

i mean i have to implement it some time

#

this is so stupid bruh

wild glen
hollow flare
#

you will eventually suffer for not having a heap

wild glen
#

im pretty sure userspace programs have their own heaps

#

ok lemme just do kernel heap

#

👍❓

#

forgor

#

ergiolerfkjlewklfjwekl

hollow flare
#

yes they do but stuff in the kernel needs to use its own heap aswell

wild glen
#

kernel need heap or no'nt (strpoke)

wild glen
#

kernel do need heap

#

what if i just port an existing implementation trl

hollow flare
#

thats would work

#

just get a heap

#

any works

wild glen
#

mk

gloomy musk
#

but a simple one ain't too hard

wild glen
#

i have to do heaps now

#

Bruh

#

can i just do something fun idk program loading nooo

#

not even fun just something else

gloomy musk
hollow flare
sour pollen
balmy stump
wild glen
fluid moon
#

it's a small hell

#

but ELF is documented pretty well so it's not that hard

#

the real problem is memory management in userspace

gloomy musk
#

Program loading sounds fun lol

fluid moon
wild glen
wild glen
#

syscalls r the easiest

#

probably

wild glen
#

apple's some dude's defense for macs having the most gatekept shutdown button is that "it's unnecessary as everything is gonna be defragmented and its gonna be faster in the morning" etc

#

idk i heard that somewhere

#

maybe some dude was bullshitting

#

what happens in that fucking sleep mode that it will fix everything

#

its just a standby mode

#

also i remembered another guy who claims he "worked at microsoft" and was "designing windows nt 4"

#

said something like "the start menu gradient on the left was like really hard to generate and it isnt just a bitmap" it's a bitmap

#

deadass it's a bitmap

#

it was extracted from explorer

sour pollen
wild glen
#

they do NOT want you to shut down your pc

#

like ever

sour pollen
#

how

wild glen
sour pollen
#

like just press the button

wild glen
sour pollen
#

???

wild glen
#

they kinda just heavily discourage you from shutting your mac down

#

you can still do it they just dont like it

#

they want you to use sleep mode

sour pollen
#

i guess

#

but they absolutely don’t make it hard to shutdown

wild glen
#

true

wild glen
#

its heap time

wild glen
#

"unfucks its internal structure and makes itself more stable" or sm bs

#

not even drive defrag its probably just fucking ram atp 😭

fluid moon
#

heap time

wild glen
#

heap time

#

deltarune brainrot go here

wild glen
#

ok so im gonna triple boot nullium when i could on my old ass laptops

#

idk how can i multiboot windows 98, nt (2000 or xp) and this shit without going insane

#

chainloaders?

#

does limine run on the most ass potato?

#

can i put windows 98 and my os on the same partition (fat32)

#

most likely i can

#

idfk

#

is 2-4 gb enough

#

should be

#

i always give windows 98 like minimal hard drive space

#

or not minimal just not a lot

#

4 gb out of 30 gb

#

the rest goes to nt since thats what i actually use on these laptops

#

ima just make a separate partition if i do something funky with the hard drives eventually

#

and also so i can format it easily

#

maybe

#

i should be doing my heap bruh 😭

fluid moon
wild glen
#

with more than 13 coordinated murders up his sleeve, the gang under his control has taken over the entirety of chicago trl

wild glen
#

i might get documentation for my thinkpad's audio output

#

how the fuck is it this documented

wild glen
#

it has a few other things i assume

#

wait no thats the wrong card

#

same brand tho

wild glen
#

the biggest problem might be the ati radeon card

#

the radeon 7500 i think

#

are there any info on really old radeon cards so i can save it for later anywhere

#

if yall know anything please tell me i want my radeon documentation

#

ok gpu's are evil actually i dont need them unless im using windows xp trl

#

cope?

#

AC97 exists

#

standards my beloved

wild glen
wild glen
#

does anyone else print a shit load of debug messages and then cut them all when you're done

#

like "ok this works no more debug stuff"

#

also kind reminder: DRINK WATER PLEASE

#

this applies to everyone

wild glen
wild glen
#

taking a break today

#

👍

wild glen
#

i have windows xp now

#

why is it so blue

#

the thinkpad screen is so jaded

#

im pretty sure lenovo posted the drivers for monitor

#

i mean the monitor palette files

#

ok it was in 16 bit color by default

#

color is still ass

#

i installed a monitor driver

#

time to reboot

#

after reboot the color is still slightly funny

#

its just the bliss wallpaper

#

it looks better than without the monitor driver tho

#

time to make my 4gb fat32 partition that will be fed to windows 98

#

im putting limone on it afterwards

#

:(

#

i have been unix'd

#

by instinct i just type ls

#

and i promptly get nuh uh'd

wild glen
#

w98 up

wild glen
#

windows should bring back "nicknames" and "names"

#

i mean the system thats used by unix

#

in unixes you have a display name and a user name

#

you log in through the username and all that stuff

#

yall know

#

idk i think windows should bring that back

#

it was always there its just you cant do it directly on user account setup

#

or whatever

#

yall can still do it by making a user with what you want to be your user name and then you just rename it and its your display name now

#

works on every windows that still has local accounts in it (windows is so fucked :c)

wild glen
#

idk whyd one use that

#

its cool tho

wild glen
#

idea for stupid limine bootloader install

#

install on a usb

#

steal the boot sector

#

put it on hard drive partition

#

copy the rest of the limine stuff

#

use

#

i blame mintsuki for this

#

and finally nullium has a practical use

#

it didnt work

wild glen
wild glen
#

it is probably time to reinstall windows again

#

plz dont use limine on potatoes that cant even run 32 bit ubuntu

#

how am i supposed to even boot my os on my target system

#

chainload limine from grub4dos trl

wild glen
#

use grub2 on these things

#

way easier to set up

wild glen
#

i decided to test my os under grub

#

enabling paging breaks the framebuffer there

wild glen
#

FIXED

hushed briar
#

You gotta do it weird

#

On grub

wild glen
#

its a bit funky

hushed briar
#

If you need help with fuckshit

#

void fuckshit();

wild glen
hushed briar
#

Nah

#

I was gonna

#

But I wanna actually finish the first FloppaOS

wild glen
#

oh ok fair

hushed briar
#

I’m working on a new vmm

#

Shits fucking assn

wild glen
#

did mint expect everyone in the universe to use linux idfk

wild glen
amber pier
#

there was a limine-deploy.exe at one point

#

and if it was compiled with mingw chances are it might just work

hushed briar
#

i meant to say cygwin or mingw

#

yeah

#

mingw is probably more backwards compatible

wild glen
#

or smth

#

i cant provide it

wild glen
#

grub provides me the wrong amount of memory on my pc

#

what the fuck

wild glen
#

my framebuffer is at an address greater than the memory

#

The value returned for upper memory is maximally the address of the first upper memory hole minus 1 megabyte. It is not guaranteed to be this value.

#

what in the fuck

#

IT'S NOT GUARANTEED

#

????????????

#

WHAT

#

WHAT IS THE VALUE

#

WHAT IS IT SUPPOSED TO BE

#

WHAT IS THE GUARANTEED MEMORY VALUE

#

it returns it divided by /4???

#

gnu what the fuck

#

done i fixed this fucker

#

gnu kill yourself

#

i have to divide it by 1.3

#

no wait i have to divide the total memory

#
mem_Info.mem_total = ((meminfo->mem_lower + meminfo->mem_upper) * 1024) / 768; // GNU FUCKING KILL YOURSELF
#

just have this shit

#

it's in kilobytes

#

now you have to specify if nullium is booted from limine or not

#

Bruh

timid drum
#

if there's a big hole then the end address might be larger than the total size

timid drum
#

just walk the memory map and sum the sizes?

timid drum
#

mem_upper seems to be a stupid value

#

it's the end address of a memory block whose starting address is below or at 1MB, and end address is after 1MB

wild glen
timid drum
wild glen
#

i cant use the entire memory?

timid drum
#

just use the memory map

#

why are you even looking at these values to begin with

wild glen
#

get total amount of memory

wild glen
timid drum
#

no it means its just not reported in the mem_upper value

#

as i said, stop looking at it

wild glen
#

fine

#

thanks for the info tho

#

i have a few complaints to whoever the fuck made this now tho

hushed briar
#

thats what i do

#

what most do i assume

#

Iterate through memory regions-> for each one add the size to total memory

hushed briar
#

We got mem_total then mem_Info with a capital then meminfo with no capital or underscore

#

Keep your conventions consistent

#

I mean you don’t have to it just makes it look a bit less immature

wild glen
#

i might need to rename everything 😭

#

its not consistent at all

#

maybe later idk

fluid moon
#

pointer arithmetic isn't a reliable way to find memory sizes, especially when you're dealing with physical memory that has lots of holes

wild glen
#

i didnt understand gnu's wording the code's removed

#

anyways im working on heap allocator now

fluid moon
#

me too

wild glen
#

i need to reinstall a*ch linux

#

can i speedrun it trl

amber pier
#

framebuffer is MMIO, not RAM

wild glen
wild glen
#

anyways im gonna reinstall arch

#

i hope its not as painful as last time

wild glen
#

yo ima try continue work tmrw

#

no wait

#

today

#

oops

#

anyways i set up a stupid thing because a thinkpad i have has the coolest pc keyboard in existence

#

i basically built a home server thing

#

some old ass laptop was sacrificed for that

#

i put an ssd on it tho

#

so it has an abnormal amount of storage for back then (like 500 gb)

#

my bloated ass win7 install with multiple VS versions takes 80 g its too much for that old hd

#

anyways i have a poo ass home server

#

idea
what if everything in nullium is displayed tables

#

like dir/ls has a column for "filename" "file extension" "date" "attributes"

package manager has like "name" "description" "version" "license" "size"

#

you can put a shit ton in a table

wild glen
#

i forgor to nullium

gloomy musk
wild glen
#

i set up a home servern't tho (its just an smb share)

#

i need to clone everything on there

#

also wobbly windows are funny

#

the ones in kde

wild glen
#

I MOUNTED MY SMB SHARE

#

YOOOOOOOO

#

anyways

wild glen
#

dolphin is giving me 13000 different warnings on not fucking up my system in admin mode

wild glen
#

this is my containment there are many others like it but this one is mine

#

anyways in my echo chamber i shall claim superiority over the universe as i installed limine 10 before that announcement came out

#

also i have to finish a school thing rq before i can do the nullium

wild glen
#

OH MY WIFI SPEEDS

#

OH NOOOOOO

#

i need an ethernet switch

#

i need to connect multiple systems at once with a cable

wild glen
#

ok done i moved everything to home server

#

thing

#

YOOOOOOOOOOOOOOOOOOO

#

i restored the repos

#

i love waiting for YEARS and YEARS

#

a literal eternity

wild glen
#

thread nuked ops

#

oops

#

why did it disappear from my list

wild glen
#

i need to get my shit together and make my cross compiler

#

okay so uh

#

didnt work at all today 😭

#

the big problem are that the speeds for compiling are slow due to uhh

#

WiFie

#

i should just connect my laptops with ethernet atp

#

cant tho im compiling binutils rn

wild glen
wild glen
#

can this thread be seen

#

its like it got muted

#

ik im not posting anything but still

hushed briar
#

Also you haven’t been posting a lot of stuff about nullium so

#

Most people won’t reply to non OSdev stuff

wild glen
#

yeah no i thought the thread got nuked because it ddnt appear in my followed threads

#

discord nuked it off there

wild glen
#

thread nuked from followed list again

#

i need to work on this man

amber pier
wild glen
wild glen
#

ok for some reason nullium bugs out when i started it on qemu again

#

weird

#

why does it die at the IDT

#

no wait it seems to be dying at the pit init

#

some shit is VERY VERY wrong

#

idk what

#

the emulation is geniune ass for some reason

#

what used to work now just dies and burns

#

what if i just restart progress entirely

wild glen
#

BRUH

#

IT WAS THE FUCKING HOME SERVER

#

MICROSOFT >:C

#

nevermind

#

what the fuck

#

its geniunely dying

#

help

#

imma do a rewrite

wild glen
#

maybe ima do power pc idk

#

yeah idk rewrite time probablyn't

#

finally i can be free from the gdt's

hollow flare
#

a rewrite a day keeps the happiness away :D

lilac void
#

Nice os : >

hushed briar
wild glen
#

also thanks

hushed briar
fickle widget
#

Is this project still going?

fickle widget
#

:c

cunning trail
#

.

median estuary
cunning trail
median estuary