Search logs:

channel logs for 2004 - 2010 are archived at ·· can't be searched

#osdev2 = #osdev @ Libera from 23may2021 to present

#osdev @ OPN/FreeNode from 3apr2001 to 23may2021

all other channels are on OPN/FreeNode from 2004 to present

Wednesday, 15 March 2023

09:38:00 <dzwdz> oh hey, since when does sortix have a gui?
09:40:00 <dzwdz> it's looking pretty nice
09:43:00 <dzwdz> oh i guess it's still not on the main branch
11:09:00 <nortti> dzwdz: it's been part of staging branch / volatile builds for a few years now, but it's still a little bit too WIP to merge
13:55:00 <gog> it has trianglix
13:55:00 <gog> feel the power of hte triangl
14:03:00 <zid> I saw a triangle once, awful experience
14:06:00 <gog> did you turn 180°and walk away?
14:11:00 <zid> no, interior angles are evil
14:12:00 <zid> I turned 900 degrees
14:12:00 <gog> what about an interior crocodile alligator
14:12:00 <bnchs> turn 360 degrees and walk away
14:13:00 <gog> yes like the xbox
14:13:00 <gog> red ring of death
14:13:00 <zid> I drive a chevrolet movie theatre
15:25:00 <mrvn> bnchs: it's a quantum triangle, you have to turn 720°
15:34:00 <bnchs> gog: i loveee playstation, i LOOOOOVE PLAYSTATION, kill the xbox! the reason why they call it the motherfucking 360, you look at it, makes you wanna do a 360 and walk away
15:36:00 <gog> haha
15:36:00 <gog> PS2 was the last good console
15:36:00 <nortti> how do you mean?
15:37:00 <bnchs> gog: make it the PS3
15:37:00 <bnchs> the latest good console
15:39:00 <gog> i never had a PS3
15:39:00 <gog> i had a wii and after that i decided i didn't want consoles anymore
15:39:00 <gog> i'm strongly considering getting a switch tho
15:41:00 <Bitweasil> I've owned a PS2 and a Wii briefly.
15:41:00 <bnchs> PS3 had a really powerful CPU, but 512 MB of overall RAM
15:41:00 <bnchs> and then with PS4, it had 8 GB of RAM, but shit CPU
15:43:00 <zid> ps2 was amazing yea
15:43:00 <zid> no interest in ps3/ps4/ps4
15:44:00 <zid> ps5/ps5vr/ps5pro/ps51x
15:47:00 <gog> it's still possible that it's nostalgia that makes me miss the PS2
15:49:00 <Chamaeleon> PlayStation was the best console fite me
15:49:00 <gog> playstation was also vv good
15:50:00 <nortti> ps2 was also incredibly popular at a time when "high-end" game dev was not entirely out of reach of ppl outside big studios, meaning you got a lot of ppl throwing stuff at the wall and seeing what stuck
15:50:00 <zid> ps was ass
15:51:00 <zid> it's amazing any good games at all came out for it
15:51:00 * GeDaMo is currently playing Spyro 3 on a PS1 emulator
15:52:00 <zid> affine texturing and no floating point unit? sounds like we should make 3D games!
15:56:00 <gog> i mean
15:56:00 <gog> people got a lot out of the playstation's hardware
15:57:00 <zid> somehow yea
15:57:00 <zid> It's amazing they made anything 3D at all, even a shitty rotating cube
15:57:00 <gog> yeh
15:58:00 <GeDaMo> Soul Reaver has streaming geometry
15:58:00 <zid> crash did good tricks with that
15:58:00 <zid> most of the levels are rail shooters so it streams the geometry
15:59:00 <bnchs> zid: no FPU doesn't mean you can't emulate one
15:59:00 <zid> just offscreen of the camera are individual tris popping in
15:59:00 <bnchs> which is still shit
16:00:00 <zid>
16:01:00 <gog> por que no los dos?
16:06:00 * lav waves
16:07:00 <FireFly> good news you can emulate a PS2
16:07:00 <FireFly> someday I'll pick up lapucelle tactics again
16:08:00 <zid> you mean
16:08:00 <zid> we love katamari
16:09:00 <bnchs> FireFly: i like how PCSX2 is full of graphical emulation hacks per-game
16:09:00 <zid> I have a legit copy of that but all my ps2 controllers are very dead at this point :(
16:10:00 <gog> can they be revived? PS2 controllers were pretty robust iirc
16:10:00 <zid> dead as in dead
16:10:00 <gog> dang
16:11:00 <zid> failed thumbsticks, failed shoulders buttons, etc
16:11:00 <zid> they've all got a few thousand hours in each
16:11:00 <gog> dirty or worn off the PCB?
16:11:00 <gog> for the buttons
16:11:00 <gog> thumbsticks might come alive with some deoxit in the pots
16:11:00 <zid> usually whatever mechanism that keeps them springy
16:11:00 <FireFly> bnchs: yeahhhh the situation is a bit dire as far as accuracy goes for ps2 emulation I think
16:11:00 <zid> has worn its guides out
16:11:00 <zid> or plain snapped
16:11:00 <gog> it's literally a spring
16:11:00 <FireFly> but fortunately for me I don't have too much nostalgia for the platform :p
16:12:00 <zid> you should see what they did on the steam controller
16:12:00 <zid> L1 and R1 are just a flat piece of plastic that wants to flex away from the contact
16:12:00 <zid> so after a few hundred presses it just breaks from stress
16:12:00 <gog> ugh
16:12:00 <FireFly> I wish I could have a controller modelled after the steamdeck :p
16:14:00 <zid>
16:14:00 <zid> center, 2nd one down
16:14:00 <zid> It's just got a bump underneath it in the center, so you can flex that big piece
16:14:00 <zid> so it eventually just snaps clean in two
16:15:00 <zid> also gets sticky buttons easily, and the touch pad is impossible to actually click, comfortable AF though
16:27:00 <heat> the xbox 360 was a good console you mofo
16:27:00 <heat> i will NOT stand for xbox 360 slander
16:27:00 <zid> only cus geometry wars
16:28:00 <heat> i hope you fucking idiots enjoy your glorified x86 computers while I use my chad powerpc console
16:28:00 <heat> with the GOAT controller
16:28:00 <nortti> I actually liked the second-version original xbox controller (not the duke, the normal-looking one) more than the xbox 360 one
16:30:00 <heat> i got an xbone series S controller a few months ago
16:30:00 <heat> solid improvement on the xbox 360 controller
16:30:00 <heat> iirc the original xbone controllers were crap
16:31:00 <heat> and the OG xbox ones? naw
16:32:00 <gog> i prefer my regular x86 computer
16:33:00 <zid> AMDAMDAMDAMD
16:33:00 <gog> AMD AMD AMD AMD
16:33:00 <heat> do you use freebsd?
16:33:00 <heat> because AMD + freebsd is pretty much a playstation
16:43:00 <gog> why would i use freebsd zid
16:43:00 <gog> heat
16:43:00 <gog> zidheat
16:43:00 <heat> idk
16:43:00 <zid> zheita
16:43:00 <heat> do you have a neckbeard?
16:43:00 <gog> not anymore
16:43:00 <heat> then there's no reason to use freebsd
16:44:00 <zid> can I be a neck beard
16:44:00 <heat> yes
16:44:00 <zid> does freebsd run on am4
16:45:00 <heat> yes and/or no
17:39:00 <frkazoid333>
17:39:00 <bslsk05> ​ 50 Years Later, We’re Still Living in the Xerox Alto’s World - IEEE Spectrum
17:42:00 <Ermine> hi gog, may I pet you
17:45:00 <gog> hi Ermine you may pet me
17:46:00 <Ermine> This is great
17:46:00 * Ermine pets gog
17:47:00 <heat> mjg, sup B what do you think of opendtrace
17:47:00 <heat> why is it good and/or bad
17:50:00 <mjg> it never took off mate
17:51:00 <mjg> check out more threading kwality from llvm
17:51:00 <mjg> // The call to sched_getaffinity() may have failed because the Affinity
17:51:00 <mjg> // mask is too small for the number of CPU's on the system (i.e. the
17:51:00 <mjg> // system has more than 1024 CPUs). Allocate a mask large enough for
17:51:00 <mjg> // twice as many CPUs.
17:51:00 <mjg> :d
17:51:00 <heat> wdym it never took off?
17:51:00 <heat> freebsd is literally using it
17:51:00 <mjg> opendtrace/
17:51:00 <mjg> no handsom
17:51:00 <zid> That's an amazing
17:51:00 <heat> awww no you're handsome
17:51:00 <zid> coed
17:52:00 <mjg> fbsd is using *dtrace*
17:52:00 * gog prr
17:52:00 <mjg> which diverged from illumos
17:52:00 <mjg> there was an attempt at creating a sharedp roject
17:52:00 <mjg> and it wnet to shit
17:52:00 <mjg> the end
17:52:00 <heat> ok so what do you think of that codebase in general
17:52:00 <mjg> so apart from the 1024 cpu luller
17:52:00 <mjg> if you don't want to use hyperthreads, llvm will try to find out how many real cores you got
17:53:00 <mjg> to that end it is going to parse /proc/cpuinfo :d
17:53:00 <heat> hey at least it's not parsing /sys
17:53:00 <mjg> which i'm confident defeats the point
17:53:00 <mjg> heat: dtrace is code is classic solaris
17:54:00 <mjg> heat: most notably in terms of lack of *actual* regard for multicore or numa
17:54:00 <heat> but seriously WHAT SHALT I THINK OF DTRACE
17:54:00 <heat> i remember you told me to use eBPF for Onyx and to not bother with dtrace
17:54:00 <mjg> dtrace is adeadend, which is why
17:54:00 <mjg> fucker
17:54:00 <heat> yesterday I was looking and saw dtrace for windows
17:54:00 <mjg> there is also one for os x
17:54:00 <heat> then I saw the commit that added it, remarkably simple
17:54:00 <mjg> what you don't udnertsands is that nobody is using them
17:55:00 <mjg> even at apple
17:55:00 <heat> why
17:55:00 <heat> why is it a dead end
17:55:00 <mjg> no developerz
17:55:00 <mjg> modulo some movement in freebsd land
17:55:00 <heat> what is it lacking that I would get from some randos developing eBPF bullcrap
17:56:00 <mjg> active dev base
17:56:00 <mjg> loops
17:56:00 <heat> cuz bpftrace doesn't seem that widespread either
17:56:00 <heat> m9 eBPF can't loop yet
17:56:00 <heat> and thank god for that
17:56:00 <mjg> dtrace can't loop by design
17:56:00 <mjg> someone added lolglue to pretend therea re if statments
17:57:00 <mjg> why don't yout port the obsd tracing framework smartass
17:58:00 <heat> what's the openbsd tracing framework
17:59:00 <heat> also if you think dtrace is so bad why don't you have eBPF
17:59:00 <mjg> i'm not claiming it is so bad
17:59:00 <mjg> i'm claiming if one is to port something, today ebpf is the better choice
17:59:00 <heat> you said it's dying
17:59:00 <mjg> it is
17:59:00 <mjg> if you have it already operational, it is perfectly usable
18:04:00 <sortie> <klange> Re: Wallpapers - 1.x was landscapes, 2.x is fauna, and everything in that album from the vim+python ports onwards is my own photos, which adds to the in-house-y-ness.
18:05:00 <sortie> ^ Yeah you're a really good photographer :)
18:05:00 <sortie> <dzwdz> oh hey, since when does sortix have a gui? <dzwdz> it's looking pretty nice <dzwdz> oh i guess it's still not on the main branch
18:06:00 <sortie> Yeah it's on the staging branch and in the volatile builds, including the new procedural wallpaper. Feel free to try it out. I'll probably merge it within the next couple months at this pace :) I just merged networking
18:06:00 <sortie> <gog> it has trianglix <gog> feel the power of hte triangl
18:07:00 <sortie> dzwdz, indeed, Sortix 1.0 does contain trianglix. It's a revolutionary triangle environment!
18:07:00 <sortie> <zid> I saw a triangle once, awful experience
18:08:00 <sortie> zid, triangles feel your emotions. When scared, try to relax at a 90 degree angle (or radians if you're a freak who's into that). They're more scared of you.
18:09:00 <gog> pi/2 radians
18:14:00 <heat> yummy pie
18:14:00 <gog> piiiiiie
18:17:00 <zid> 90 radians!?
18:19:00 <gog> that's about 14 times around a circle
18:19:00 <gog> weeeeeeeeeeeeeeee
18:20:00 <zid> I am dizzy
18:20:00 * Ermine is dizzy
18:24:00 <jcmdln> heat: OpenBSD has which uses BPFtrace. It should be very familiar to bpftrace users
18:24:00 <bslsk05> ​ btrace(8) - OpenBSD manual pages
18:38:00 <ilovethinking> hey guys
18:38:00 <ilovethinking> x86_64-elf-ld: i386 architecture of input file `src/boot.o' is incompatible with i386:x86-64 output
18:38:00 <ilovethinking> i compile the .S file with -m32, how is it i386:x86-64
18:38:00 <ilovethinking> what does that even mean
18:42:00 <Ermine> I guess you need to add certain flags to ld. Idk which, just a guess.
18:43:00 <ilovethinking> i have -melfi386
18:44:00 <heat> jcmdln, what's the difference? surely openbsd doesn't have an eBPF interpreter right?
18:45:00 <heat> at least not from memory and a quick dive into sys/net/bpf.c shows it's just cBPF
18:47:00 <ilovethinking> what does i386:x86_64 mean
18:51:00 <heat> ilovethinking, you're mixing elf32 with elf64 object files
19:01:00 <ilovethinking> heat: sorry, i got disconnected. i am pretty sure i need elf32 output files and then link them into an elf32 binary?
19:01:00 <ilovethinking> or how do i do it
19:01:00 <ilovethinking> im booting with qemu -kernel
19:02:00 <heat> compile and link normally, then objcopy to elf32
19:02:00 <ilovethinking> compile as x86_64 or i386?
19:05:00 <heat> x86_64
19:51:00 <gog> hi
19:53:00 <lav> a gog!
19:53:00 * vdamewood gives gog a fishy.
19:53:00 * gog chomp fishy
19:53:00 <gog> hi hi lav
19:54:00 <heat> vincent van gog
19:54:00 <zid> heat has a trophy wife
19:54:00 <zid> huge ears and a list of men's names written on the back
19:55:00 <heat> i dont have a wife
19:55:00 <zid> (husbando comment)
20:00:00 <mjg> heat has a gnu/waifu
20:00:00 <mjg> it's basically stallman lookalike
20:00:00 <heat> mjg why do you keep calling me handsome
20:01:00 <heat> do you want me to wife you
20:01:00 <heat> is that it
20:01:00 <mjg> it's an insult dawg
20:01:00 <heat> right
20:01:00 <heat> in BSD circles the uglier you are, the better
20:01:00 <mjg> "when a singer has shit voice, you tell her she looks pretty"
20:02:00 <zid> When I wake up I shall be sober, but when you wake up you shall still be handsome
20:02:00 <mjg> sopranos vibes
20:03:00 <heat> mjg, why do you say openbsd tracing sucks
20:03:00 <mjg> i donm't thhink i said that, but it probably does
20:04:00 <mjg> last i had seen it, liek 2 years ago, it was defo crap, but also in infancy
20:04:00 <mjg> technically it may be it is great now but i would not bet on it
20:04:00 <heat> apparently it uses bpftrace?
20:05:00 <heat> btw has anyone told OpenBSD people that having the mdoc directive as a tooltip on manpages is stupid and useless
20:05:00 <mjg> it does? are you sure there is no name clash here
20:06:00 <heat> idk man it's what jcmdln said
20:06:00 <heat> i know jack shit about OpenBSD tracing
20:07:00 <mjg> as i said, i'm not looking at their code anymore
20:07:00 <heat> for health concerns
20:11:00 <mjg> huh bpftrace is apache-licensed
20:11:00 <mjg> in that case it is plausibly used by obsd
20:11:00 <heat> but openbsd does not have a ebpf interp
20:12:00 <heat> I think
20:13:00 <mjg> one way to find out
20:13:00 <mjg> but i'm not going there
20:13:00 <mjg> hf
20:14:00 <heat> can't
20:14:00 <heat> 2busy
20:14:00 <mjg> 2handsome2care\
20:14:00 <heat> your words mu
20:14:00 <heat> m8
20:14:00 <mjg> stop the hate speech
20:15:00 <heat> don't stop the hate speech
20:15:00 <heat> just hate
20:15:00 <lav> whose words μ?
20:16:00 <heat> project mu
20:17:00 <Ermine> m8 = m4 + m4
20:17:00 <heat> ah naw not m4
20:18:00 <heat> anyway i'm going to watch teh footy
20:19:00 <mjg> gr8f8m8
20:51:00 <heat> mjg, how many unix points do I get if I name my lookup func namei
20:51:00 <ilovethinking> hey, how’s everyone doing
20:52:00 <ilovethinking> heat: you’ll be reincarnated into an open source god
20:53:00 * geist yawns
20:54:00 <geist> still messed up after daylight savings change
20:54:00 <geist> or at least that's my excuse and i'm sticking to it
20:54:00 <geist> trying to build qemu on this riscv board now, for no other reason than why not
20:55:00 <heat> wait what daylight savings change?
20:55:00 <geist> yes tell me about it, it's stupid
20:55:00 <heat> oh wow TIL the day changes slightly between countries
20:56:00 <heat> "On March 15, 2022, the United States Senate passed the Sunshine Protection Act by unanimous consent. If passed by the House of Representatives, the law would place the United States under Daylight Time year-round.[1]"
20:56:00 <heat> lmao
20:57:00 <geist> yeah, it keeps getting pushed by various states and whatnot
20:58:00 <geist> one day they'll drag it across the finish line, since AFAIK no one really wants it anymore
20:58:00 <geist> the switching. i think most folks generally prefer it being 'on' all the time, which tends to take an hour from the morning and give it to the evening
20:58:00 <geist> ie, midday is approximately 1pm instead of noon
20:58:00 <geist> which <shrug> it's the changing to me thats annoying
20:59:00 <heat> sgtm
21:00:00 <heat> i couldn't care less about the changing but I do like extra sunlight
21:00:00 <geist> yah i think that's what most folks prefer too
21:02:00 <geist> i can just imagine after civilization collapses and people are having to tell time with sundials they'll always have to add this one hour off for reasons no one understands
21:02:00 <ilovethinking> hey geist
21:02:00 <geist> it'll be because the Old Ones did it that way
21:02:00 <ilovethinking> guess what, i managed to compile it
21:02:00 <ilovethinking> one of the hardest hello world’s i have made tbh
21:03:00 <geist> okay.
21:03:00 <ilovethinking> not directly “hello world” but you know lol
21:03:00 <geist> sure
21:03:00 <geist> i mean compiling something is not the hard part. making it work is the hard part
21:03:00 <geist> but i'll give you whatever encouragement you need. go for it!
21:04:00 <ilovethinking> no i mean it works
21:04:00 <ilovethinking> i ran it and i managed to write to eax
21:04:00 <heat> gr8
21:05:00 <geist> noice
21:05:00 <geist> re: that whole compiling with -m32 thing. i think heat mentioned it. you want to compile as x86-64, but then use .bits32 inside the asm to force it to generate 32 (or even .bits 16 if you need it)
21:05:00 <geist> then you can link them together because the linker just sees a set of 64bit .o files
21:06:00 <geist> there are other ways to do it, but that's the most straightforward, provided you keep it simple and just do the minimum amount of work in 32bit code and get right into 64
21:07:00 <ilovethinking> ohh okay
21:07:00 <ilovethinking> thanks
21:07:00 <geist> if you try to write too much 32bit and reference symbols in themain binary you'll get into relocation linker issues and you dont want to fiddle with that
21:08:00 <geist> an artifact of the 16 -> 32 -> 64 extensions that has been done on x86 over the years is it's basically the same ISA. it's just had more bits added and some reinterpretation of some of the other bits as modes switch
21:09:00 <geist> but it means the assembler can just assemble the same instructions differently if it knows what mode you're assembling for
21:09:00 <geist> hence the .bits 16 or .bits 32 directive in the assembler. it'll just start generating instructions from then on out until you switch modes
21:10:00 <geist> in that case if you're in a 64bit binary and telling it to assemble for 32bit then you're basically saying 'yeah i know what's going on here, dont worry about it' and the linker doesn't know any different
21:10:00 <heat> it's .code16 and .code32
21:10:00 <heat> I don't think GNU as supports .bits?
21:10:00 <geist> ah yeah. i think it was bits something on nasm or whatnot.
21:10:00 <geist> yeah you're right
21:10:00 <heat> yep
21:10:00 <geist> code16 makes more sense anyway, it's clearer what its for
21:11:00 <ilovethinking> .bits is on nasm yea i was about to say
21:12:00 <geist> the other semi clean strategy to all of this is to simply create a little front end stage of code that's completely independent of the 64bit code, and is glued on after linking. it's the 'cleanest' in the sense that both binaries are completely independent
21:12:00 <geist> but it requires more steps and more knowledge of how to fiddle with binaries, so i wouldn't recommend it now
21:48:00 <mjg> heat: that gives you mckusick point
21:56:00 <heat> software engineering question
21:56:00 <heat> imagine you're doing a large rework on a piece of code, do you do small incremental changes while testing everything still works properly, or do you do a large refactor on it and only then test
21:57:00 <gog> small changes, work from the innermost loops out
21:58:00 <gog> innermost scope i guess
21:58:00 <gog> but
21:58:00 <mjg> ENODATA
21:58:00 <gog> i also work on a project that's too large for our team
21:58:00 <gog> so it's the only way that's not gonna fuck us over
21:58:00 <brunothedev> guys, i have a amd athlon 200ge build with 8 gib of ram and 120gb ssd, i just dont have a font
21:58:00 <gog> there are things i would love to overhal, that desperately need an overhaul, but we can't
21:59:00 <brunothedev> * psu(font is the brazilian name)
22:14:00 <johngammerson> what am i doing wrong
22:16:00 <kof123> if i am being paid, probably the former. it this is giant neverending research hobby, probably the latter
22:16:00 <kof123> i.e. do things need to stay runnable in the meantime, or can it be broken for x weeks/months/years
22:30:00 <kof123> as long as progress is slowly being made/planned i see no problem condemning half the building. its just do customers expect to be in there or not
22:36:00 <kof123> i tend to write skeleton functions, so even "new" code the elevator goes to non-existent floors for a while
23:48:00 <brunothedev> honestly, there is many free pdfs of minix on the internet, should i try to print one and learn osdev like that? Mainly is that i am focusing on UNIX/POSIX
23:49:00 <klange> As far as printed matter goes, the Minix books are some of the least bad, but Minix is also very opinionated and what's covered in the books isn't really the bits most people find interesting about osdev.
23:51:00 <nortti> are the xv6 materials good?
23:51:00 <brunothedev> thank you, random ukrainian university:
23:51:00 <bslsk05> ​csc-knu/sys-prog - KNU course on building language processors (7 forks/16 stargazers/MIT)
23:51:00 <heat> nortti, IMO, no
23:51:00 <nortti> yeah had a hunch
23:51:00 <heat> it's a very naive, very simple UNIX
23:52:00 <heat> but ymmv, if that's what you're looking for, then great
23:52:00 <brunothedev> it doesnt have: permissions, nor a file structure
23:52:00 <klange> xv6 is more of a bit of software archeology
23:52:00 <klange> it's supposed to recreate the experience of the earliest builds of Unix
23:52:00 <heat> i mean, at the end of the day, that works well, particularly for a uni course
23:53:00 <brunothedev> KNU stands for Kiev National University i think
23:53:00 <brunothedev> i will not buy a minix book, it is like a minimum wage here, i would print the pdf
23:54:00 <heat> it's probably expectable that linux, etc are hard to learn from, particularly for complete newbies
23:54:00 <klange> Yeah, at textbook prices I would say don't bother with D&I.
23:54:00 <heat> so in that sense, xv6 does its job fine. the basics are still there
23:55:00 <heat> although it's a bit meh still, source code organization is severely lacking, so are comments
23:55:00 <brunothedev> the only "documentation" i ve found on xv6 is a mit(i think) stundent notes on github
23:55:00 <brunothedev> they copy code from netbsd and other too i think
23:55:00 <nortti> the course material should be available at MIT's site
23:55:00 <klange> Of my passive goals with my OS is to have something that is both complete enough to touch a bit of everything, while remaining simple in its design and layout so as to be fully comprehensible.
23:56:00 <heat> all in all, dh`'s OS161 is probably a much better resource than xv6
23:58:00 <brunothedev> honestlly, i am just surprised they didn't bother to take down this repo, you can find easily by just searching, i made a backup in a case of takedown
23:59:00 <brunothedev> it is like 6 tanenbaum books
23:59:00 <klange> Tanenbaum doesn't care too much himself, and I don't think he puts any pressure on his publishers to go after things.
23:59:00 <klange> Plus Minix itself is FOSS.