klange changed the topic of #osdev to: Operating System Development || Don't ask to ask---just ask! || For 3+ LoC, use a pastebin (for example https://gist.github.com/) || Stats + Old logs: http://osdev-logs.qzx.com New Logs: https://libera.irclog.whitequark.org/osdev || Visit https://wiki.osdev.org and https://forum.osdev.org || Books: https://wiki.osdev.org/Books
gildasio has quit [Ping timeout: 240 seconds]
nyah has quit [Quit: leaving]
gog has quit [Ping timeout: 265 seconds]
Turn_Left has quit [Read error: Connection reset by peer]
dude12312414 has quit [Quit: THE RAM IS TOO DAMN HIGH]
<sakasama> Impressive. For most people the gross is negative.
* sakasama chops down programmers randomly.
remexre has joined #osdev
<zid> I am highly gross.
[itchyjunk] has quit [Remote host closed the connection]
skipwich has quit [Ping timeout: 240 seconds]
Vercas69475 has quit [Quit: buh bye]
Vercas69475 has joined #osdev
nur has quit [Ping timeout: 250 seconds]
heat has quit [Ping timeout: 248 seconds]
_whitelogger has joined #osdev
vdamewood has joined #osdev
GeDaMo has joined #osdev
pmaz has joined #osdev
slidercrank has joined #osdev
biblio has joined #osdev
LostFrog has joined #osdev
PapaFrog has quit [Ping timeout: 240 seconds]
Burgundy has joined #osdev
danilogondolfo has joined #osdev
<immibis> bnchs: you don't EARN money either. You get paid money. The amount of money you get paid has VERY LITTLE to do with how much you actually deserve - perhaps even a negative correlation.
zxrom has quit [Remote host closed the connection]
Left_Turn has joined #osdev
zxrom has joined #osdev
GreaseMonkey has quit [Quit: No Ping reply in 180 seconds.]
<sakasama> You can also steal money, or equivalently, invest.
<sakasama> Mining cryptocurrencies fits in there somewhere, but is rather ecologically unfriendly compared to old fashion fraud and market manipulation.
nyah has joined #osdev
gog has joined #osdev
Burgundy has quit [Ping timeout: 268 seconds]
pmaz has quit [Ping timeout: 240 seconds]
biblio has quit [Quit: Leaving]
greaser|q has joined #osdev
<immibis> proof of stake has a much more understandable model there
<immibis> in terms of economics. staking crypto is not dissimilar from betting on the continued solvency of a bank by keeping your money in an interest-bearing account
pmaz has joined #osdev
<clever> while proof of work just incentivizes wasting electricity
pmaz has quit [Client Quit]
<clever> if you put in more work, you get short term gains, but if everybody puts in more work, the difficulty goes up, and then everybody makes the same as before
awita has joined #osdev
<clever> so now your blowing more energy to get the same result as before
<clever> and the only cap on things, is electricity costs vs selling what you mined
gildasio has joined #osdev
gildasio has quit [Remote host closed the connection]
gildasio has joined #osdev
gildasio has quit [Ping timeout: 240 seconds]
Turn_Left has joined #osdev
Left_Turn has quit [Ping timeout: 246 seconds]
Left_Turn has joined #osdev
Turn_Left has quit [Ping timeout: 256 seconds]
Turn_Left has joined #osdev
Left_Turn has quit [Ping timeout: 264 seconds]
heat has joined #osdev
elastic_dog has quit [Ping timeout: 240 seconds]
elastic_dog has joined #osdev
goliath has quit [Quit: SIGSEGV]
Turn_Left has quit [Ping timeout: 264 seconds]
gildasio has joined #osdev
Turn_Left has joined #osdev
dutch has quit [Quit: WeeChat 3.8]
goliath has joined #osdev
Turn_Left has quit [Ping timeout: 264 seconds]
Turn_Left has joined #osdev
dude12312414 has joined #osdev
<heat> mjg, is kgmon the old crap you were talking about?
Turn_Left has quit [Ping timeout: 265 seconds]
foudfou has joined #osdev
Turn_Left has joined #osdev
foudfou has quit [Quit: Bye]
foudfou has joined #osdev
foudfou has quit [Remote host closed the connection]
Burgundy has joined #osdev
Turn_Left has quit [Ping timeout: 246 seconds]
foudfou has joined #osdev
[itchyjunk] has joined #osdev
foudfou has quit [Client Quit]
warlock has joined #osdev
Turn_Left has joined #osdev
Turn_Left has quit [Ping timeout: 264 seconds]
zxrom_ has joined #osdev
zxrom has quit [Ping timeout: 268 seconds]
foudfou has joined #osdev
skipwich has joined #osdev
awita has quit [Ping timeout: 240 seconds]
FreeFull has joined #osdev
gareppa has joined #osdev
Left_Turn has joined #osdev
zxrom_ is now known as zxrom
gareppa has quit [Remote host closed the connection]
moberg has quit [Remote host closed the connection]
xenos1984 has quit [Ping timeout: 240 seconds]
xenos1984 has joined #osdev
Turn_Left has joined #osdev
slidercrank has quit [Ping timeout: 264 seconds]
Left_Turn has quit [Ping timeout: 265 seconds]
awita has joined #osdev
xenos1984 has quit [Ping timeout: 256 seconds]
xenos1984 has joined #osdev
gildasio has quit [Ping timeout: 240 seconds]
awita has quit [Ping timeout: 256 seconds]
danilogondolfo has quit [Remote host closed the connection]
<geist> oh man i broke one of my fingernails last night and that hurs like a mofo
<sham1> Rectangles are the bane of my existence right now
<Ermine> gog: may I pet you
<gog> yes
* Ermine pets gog
<gog> geist: oof owie'
* gog prr
* kof123 hands sham1 copy of ecstatica ("Voxel" graphics IIRC)
<geist> eyah torn my little pinkie nail about halfway down the nail bed, across
<geist> but not enough to completely break off the nail. so it'll be like this for months probably until it can completely grow back
<kof123> *ellipsoid "Somebody should really remake the wacky ellipsoid voxel engine"
<heat> i hate grub i hate grub i hate grub
<heat> it's like they piss me off on purpose
<gog> grub is made from everything
<Ermine> Who doesn't hate grub
<gog> sing to the tune of "i like dirt" by RHCP'
<gog> i hate grub
<Ermine> i hate grub
<heat> i hope yall realize most distro GRUBs are patched to shit, because upstream GRUB is even more super borky
<gog> yes
<Ermine> yes
<GeDaMo> For a second I thought you were talking about food :P
<gog> i prefer systemd-boot but i cba to install it and make it work right
<heat> my problem 2day: efi handover protocol for mb2
<gog> write your own efi
<heat> my own efi??
<gog> do weird things with it like me
<heat> nooOOOOOOoooooOOOOooooo
<gog> yers
<Ermine> Gotta read that standard
<gog> i'm writing efi right now and loving it
<heat> the gang rewrites tianocore
<gog> yes
<Ermine> Still on section 2...
<heat> GogServicesLib
<heat> GogServicesDxeSmm
<geist> hmm not my favorite RHCP album, but it did have Fruciante in it
<geist> he's great
<Ermine> Finally, with EFI_GOG_PROTOCOL support
<heat> and then the PEI variant, GogServicesPeim
<heat> everybody shits on protocols but no one seems to enjoy good ol PPIs
<Ermine> PEI = ?
<geist> prince edward island?
<heat> pre-efi environment
<heat> it's covered by That Whole Other Efi Spec
<heat> i do like PEI a lot, I find DXE/UEFI way too bloated
<Ermine> prince edward island was before efi, so PEI is PEI
<Ermine> heat: do you mean UEFI Platform Initialization Specification?
<heat> yes
<zid> I had a realization about libgcc
<zid> libgcc contains code, code that you compile when you build gcc, that code goes into an .a which you splat into your project
<zid> so your CFLAGS for building gcc change the binaries that your gcc produces
<heat> basically your whole PEI is composed of PEI modules (PEIM), and they communicate using PPIs (PEIM-to-PEIM interface)
<heat> which are protocols but way simpler and more direct
<zid> unless their makefile deliberately ignores CFLAGS for libgcc and hard-builds it with -O2 -march=generic or whatever
<heat> you find the PPI and fuckin call it
<Ermine> Holy shit, another 1146 pages. Is it useful for bootloader writers?
<heat> no
<Ermine> nice
<heat> it's for firmware people, everyone before UEFI proper
<zid> bootloader writers, also known as the osdev discord
<gog> i'm a bootloader writer
<heat> so SEC, PEI, DXE, BDS(?)
<Ermine> FreeBDS when
<gog> OpenBDS will be secure by default
<heat> like, actual EFI incorporates both specs, but bootlegged EFI just implements the actual spec
<heat> zid, it ignores CFLAGS
<heat> there's another var you can try and poke to influence it
<zid> TARGET_FOR or whatever?
<heat> hmm no I don't think it's that simple, IIRC it's something internal
<heat> not just CFLAGS_FOR_TARGET
<heat> which is why forcing libgcc to -mcmodel=<whatever> is a PITA
* Ermine wonders why llvm doesn't use compiler-rt by default
<heat> compiler-rt does not implement all of libgcc
<heat> that's a slightly separate project: see the efforts behind making glibc build with clang
<Ermine> Given that this is GNU I'm not surprised it isn't trivial
LostFrog has quit [Read error: Connection reset by peer]
PapaFrog has joined #osdev
<zid> heat: it was for_target
<zid> make all-target-libgcc CFLAGS_FOR_TARGET='-g -O2 -mcmodel=kernel -mno-red-zone'
<zid> from osdev wookie
<heat> ah ok cool my bad then
<zid> It recommends hand editing the makefile to mess with the PIC settings though :P
<heat> i remember having to dig into libgcc makefiles to figure that out, maybe i was doing things wrong
<heat> ... yeah
<heat> cmpl $MULTIBOOT_TAG_TYPE_EFI64, (%rdi)
<heat> cmove 8(%rdi), %rdx
<heat> cmpl $MULTIBOOT_TAG_TYPE_EFI64_IH, (%rdi)
<heat> cmove 8(%rdi), %rcx
<heat> cmove 8(%rdi), %rsi
<heat> how eww is this?
<geist> for my toolchain patches i have a whole MULTILIB thing to build no-red-zone variants fwiw
<geist> if you want a cleanerish way to do it
<bslsk05> ​github.com: toolchains/gcc-patch-000 at master · travisg/toolchains · GitHub
<heat> no-red-zone isn't enough, you need mcmodel=large or mcmodel=kernel
<geist> oh?
<geist> i didn't real the full scrollback, is this for EFI stuff?
<heat> what is?
<geist> this building of libgcc w/no-red-zone talk
<heat> no idea, that's zid, not me
<heat> given it's zid, probably not efi
<heat> :p
<heat> ... but I'm faaaaaaiirly sure I've ran into mcmodel issues with that approach
<geist> ah. FWIW i haven't but then i dont think my code ends up needing much libgcc anyway
<heat> i just have a version of compiler-rt with my kernel now
<geist> for zircon we just dont link with it in the kernel, which we can generally get away with because 64bit and not doing fancy bits
<heat> it's much superior to trying to convince llvm or gcc to compile it the way I want it
<geist> reminds me i need to finish getting the toolchains script up to date with 13.1
<heat> anyway how eww is my assembly snippet?
<heat> i think it's fairly clean? I don't know if a compiler would gen this though
<geist> seems legit to me
<geist> i mean, honestly any assembly that works is pretty good
<geist> unless you're tyring to microoptimize it, but this does not need microoptimization
<geist> wont work on pentiums, of course because cmove
eau has joined #osdev
<heat> yes, i just want something clean-ish that won't pain me to look at
<geist> but i dont remember the syntx of cmove. where is the third arg? is it implicitly rax or something?
<heat> there's no third arg
<geist> oh if condition is met replace A with B?
<heat> cmov - eq condition (Z flag) - mov 8(%rdi) to %rsi if Z
<geist> oh the 'e' is the 'equals to zero' part
<geist> forgot abou that. i'm used to something like 'eq' or 'ez' from arm and riscv respectively
gildasio has joined #osdev
<heat> cmpeq also works if you're working with 64-bit lol
<geist> mean anything else or just an alias for it?
<heat> q = qword
FreeFull has quit []
<heat> cmpe with 64-bit arguments is implicitly cmpeq, cmpe with 32-bit is cmpel
<heat> erm, sorry
<heat> brainfart?
<heat> s/cmp/cmov/ in these last few messages
<heat> so cmoveq also works. that's what I meant
<geist> ah eq makes more sense
<zid> Yea my solution is just 'amd64'
<geist> my x86 asm foo is not that strong. i can read it pretty well, but when i write it i tend to use the same 20 instructions and write it risc-like
<gog> haha weird code go brrr
<geist> which nowadays is probably what you're supposed to do anyway
<zid> I was moaning about this in the gcc channel and they were like "why the fuck would you want gimple libgcc?" I explained and they were like "oh, right"
<zid> That's just how programs work now geist, more than anything
FreeFull has joined #osdev
<zid> once you've got add/sub/mul/inc/jmp/call sorted, there isn't a lot left your program *needs* to do
<zid> you're not hand-writing BCD code
<zid> using special bcd instructions
<heat> geist, isn't the tendency for risc to be more cisc-like?
<zid> yea, and that too
<geist> it's like there's some sort of ideal middle ground that everything moves towards
<geist> but it's generally easier to add than take away
<zid> (just a general convergence on 'things that are easy and fast')
<geist> ie, x86 still has all the trashy shit, but at least arm and riscv can add till they achieve some sort of ideal state
<heat> x86 is still super CISC IMO. like all the SIMD instruction stuff they keep adding
<zid> as you're probably sick of hearing me say: risc doesn't make sense as a design once you have cache
<geist> i can see, for example, riscv adding a lot of the zbx instructions because the lack of bit twiddling instructions is kinda a pain
<gog> still cisc tho
<geist> and i see the difference in codegen (been piddling wit it at work)
* gog fingerguns
<heat> "take these 2 two AVX-512 registers and shuffle them according to this mask im giving you kthxbye" is exactly the kind of shit they keep adding
<heat> they = x86, not riscv (not yet anyway)
<geist> yeah, though honestly to be fair i tend to consider vector and those sort of things to be basically a specialized subset of the whole thing and not really the general ISA
<geist> in those case evyerhting seems to be converging on more and more specialized things for specialzied situations
<bslsk05> ​www.felixcloutier.com: GF2P8AFFINEQB — Galois Field Affine Transformation
<zid> yea turns out hardware accel makes things faster
<geist> but kinda makes sense there because the vector bits are big ass piles of ALUs so the speicalized instructions to maximize their use are more okay
<heat> or aes or crc32 extensions, etc
<zid> risc is a compromise we don't need anymore
<geist> it's more like it's a design pattern you start from and then follow to where you want to go
<geist> and i think it's generally easier to start with simpler to decode instructions, load/store arch, and then add your exceptions
<geist> than the other way around
<geist> for example it's pretty trivial for apple to decode 8 instructions simultaneously on M1 silicon because it's all nicely 32bit aligned
<geist> same with bigass POWERs
<geist> no x86 has gotten to that point yet. 5 or 6 on the most recent ones i think
<zid> (m1 actually decodes x86 faster than real x86 cpus do though)
<zid> so they clearly are just good at it
<geist> riscv is going to be interesting when the big cores come along. are they going to allow 16 bit compressed or go 32bit only?
<geist> m1 does not decode x86 at all
<zid> m1 was specifically the rosetta cpu was it not
<heat> hm?
<geist> no. there's a software transcoder
<zid> wow how did I miss that
<heat> yeah m1 only has a couple of extensions to make it easier to transcode
<geist> the hacks that M1 has for x86 is a) it has a strongly ordered mode you can toggle between
<geist> b) it has a few extension instructions that compute x86 style flags
<geist> and c) has enough registers to easily hold the entire x86 state
<geist> and d) is fast as fuuuuck
<heat> fast as fuuuuuuuuuck
<geist> have seen some writeups on the rosetta thing and it's relatively simple. mostly a straight transcode
<zid> I wonder how well an orthogonal cisc would do
<GeDaMo> I think Rosetta translates the whole program ahead of time
<geist> yah i read that basically it decodes a parallel text segment next to the x86 part that reaches into the same rodata/data segment, etc
<geist> so it ends up loading alongside the binary
<geist> also to help arm64 is basically the same from a little endian, alignment of stuff, ABI point of view
<geist> which is almost certainly not by accident. every other major new(ish) arch basically needs to be 100% x86 compatible from the basics point of view. riscv is no exception
<heat> also big endian sucks?
<zid> also big endian sucks
<geist> i'm sitll constantly surprised at how fast M1s are. was running one of those cinebench benchmarks the other day
<heat> and windows does not support big endian anyway I think
<geist> and my M1 3.2Ghz mac mini (first gen) is like 90% as fast as my 5950x at 4.5Ghz core
<heat> yeah
<geist> which lines up precisely with what i had seen in the past. out the gate the first gen M1s were very competitive with top of the line x86s at a much slower clock rate
<heat> also heats up way less
<geist> very wide and with lower clock rate and crazy memory bandwidth == less power
<geist> yah
<heat> versus the fucking intel mbp that try and make you sterile
<geist> and that very wide probably has sme help from the arm64 arch: you can decode 8 instructions in parallel, lots of regs, etc
<heat> seriously, how is "warm up to 97C, then turn on the fans, when its at 88C turn them off, repeat" a cooling strategyyyyyyyy
<geist> yeah the newer zen 4s also do precisely that. slam right into their thermal limit and back off instantly. and that's just by design now
<heat> oh gosh
<geist> so now you really do actually get better performance if you have bigger beefier heat sinks or cooling
<heat> but I think these are just firmware/platform policies though?
<Ermine> One problem with m1: expensive af
<heat> apple moment
<geist> also one limitation all of the M1/M2 cores have is they still have the plain 128 bit NEON/ASIMD vector stuff
<Ermine> yeah
<geist> so they will still get trounced on use cases where you compare with some avx512 thing
<geist> apple hasn't yet started implementing SVE. I'm curious when/if they will
<heat> you'll get this macbook with a lower-powered CPU and a tiny screen and a whole 256GB! of disk space for 2K and you'll enjoy it!
<Ermine> 2k what
<heat> 2000 europes
<geist> i mean i'm typing on my mbp14 right now and its a fantastic experience. but then i always get highish end macbooks and then hold onto them for like 6-8 years
<geist> my 2014 was due for an upgrade when i got this a year or two ago
<heat> ok, exagerating. it's more like 1700 europes here
<zid> 2k urops is like 1990 more europs than I have
<zid> heat wehn is my piss4 controller shipping
<heat> the shitty normal non-pro macbooks are 1300-1400 for the lower end shtuff
<geist> zid: honestly i would ship you random things if you didn't live in another country
<heat> sorry, no piss4 control
<geist> where shipping is more than the value of the thing
<heat> WTF
<zid> I'll pay shipping but it has to be random. A twig, the third button down on your dress shirt, a dog brush, an unused envelope
<zid> 1 spaghetto
<geist> kk, i'll send you a bill
<geist> i have a lot of pinecones here
<heat> i'm here to announce i'm moving to seattle, washington, united states of america
<heat> you know what I really need? stuff. send me stuff.
<zid> seattle isn't one of the awful bits at least
<geist> i'd rather have old pieces of stuff go to use than just sit around
<zid> I think canada has a calming effect on us americans
<zid> the more north you are the better it is
<geist> it's really pretty here too
<heat> the tech bros are moving to austin, texas
<zid> 47 degrees north
<heat> it's perfect!
<geist> once i moved to the pacific northwest and then go travel to otherplaces you kinda realize, gosh PNW is nice
<zid> so technically, south of me
<geist> yeah level with about the north coast of france
<zid> uk weird, it's up here with moscow
* Ermine is looking for the way to get stuff shipped in $country
<zid> but relatively mild and warm
<heat> Ermine, cuz of sanctions?
<zid> just north enough that we don't get night in summer
<geist> i ship stuff relatively frequently wihtin the us with a postal service flatrate box. easy to do, $10
<geist> but... past that it gets complicated and i'm a noob
<Ermine> heat: it's one part of problem, and I think it's the tractable one
<zid> heat how far north are you, should I put lisboa into calculato
<geist> zid: yeah north enough here that in the peak of summer the sun goes down like 9:30?
<geist> it's about 2030 right now, which means it's twilight till like 2200
<geist> but we still get a few hours of proper dark
<heat> zid, i don't remember how north I am, like maybe boston-level?
<zid> midnight, geist
<geist> also fun thing with the US map. seattle is farher north than maine
<heat> portugal kinda fits in with the atlantic east coast of the US
<heat> tectonic plates mofos!
<zid> 3 hours of astronomical twilight, 2:30 of nautical twilight, 1:30 of civil twilight, then 16:30 of daylight
<zid> no night
<geist> also the presence of water to the west in the northern hemisphere to control your weather
<zid> so until 3am it's as dark as dawn is
<geist> ie, europe seems unusally warm compared to NA, and/or NA seems unusually cold due to the presence of cold-ass pacific ocean to the west
<zid> europe is just warm
<zid> we get nice warm tropical water and wind
<geist> the US west coast has a nice climate as a result because of the calming effect of the ocean
<zid> france hit 45C last year
<geist> otoh the water here is also pretty cold. it's 'warm' now at about 10-11C
<Ermine> And we get arctic air sometimes
<heat> does europe include the UK here?
<zid> and you're level with france
<zid> shut up ehat :(
<heat> "grey, but a country"
<zid> hate
<geist> OTOH the other 9 months of the year it's gloomy and rainy. which i honestly like
<zid> It's not grey, it's muted green
<geist> i think there are a lot of UK ex-pats here, it's closest to their country
<zid> UK but colder
<zid> australia is UK but warmer
<geist> yah also vancouver
<Ermine> Well some people manage to make vineyards in UK
<geist> lots of vineyards around here
<zid> Ermine: i've had locally made hotsauce
<geist> on all this note i need to go mow the lawn before it warms up any more. we have a heat wave here
<geist> it's about 22C
<geist> oh the humanity!
<bslsk05> ​www.justchillies.co.uk: Reaper Habanero – Wiltshire Chilli Farm
<zid> This stuff, it was pretty good but not amazing
<geist> then when i get back in i need to look at finalizing the toolchain repo to gcc 13.1
<geist> built it yesterday but haven't tested the toolchains
<heat> it'll be 24-28C this week, here
<bslsk05> ​www.peterboroughweatherwatch.com: Peterborough Weather Watch - Real Time Weather Data
<Ermine> We had 0C previous week
<zid> 16C, 0 rain, 76% humids
<heat> is that background the average day in peterbrah
<zid> May 24th is when night stops happening
<zid> I've never seen that much snow in my life actually
<zid> That is the most snow I've ever seen
<geist> lame site you need something like https://weatherishappening.com/
<zid> just enough that you can't always see the floor in all places
<zid> Like someone falling over when walking home with their shopping that consisted entirely of flour
<Ermine> Huh, this is not a lot of snow
<heat> 66 celsius???
<zid> well yea, it's the UK
<zid> not norway
<zid> well, england
<zid> scotland gets good snow
<FireFly> don't die
<heat> ok i promise i wont die
<zid> my scottish friend says the most snow he's seen is "man height"
<Ermine> heat: oh those Fahrenheit people
<heat> it doesn't actually snow here, at all
<Ermine> There was someone from Ireland
<Ermine> or was it Iceland?
<heat> yes
<geist> for you that cant translate there's a C button
<zid> we have two icelands
<geist> because counting to high numbers is hard
<bnchs> >a C button
<zid> I can translate to like, the nearest 30F
<heat> c
<bnchs> i wish i had that for rust projects
<heat> it doesn't work geist!
<Ermine> c
<zid> -30 is 0
<bnchs> like pressing the C button converts it to C
<zid> 100 is like.. 40
<zid> interpolate
<geist> yeah. tht's what i do: 10C == 50, 20C == 68, 30C == 86... you see the pattern
<zid> I know it's 5/9ths
<geist> and since most of my life i'm between 0 and 30C is pretty ez
<zid> but I don't know in which direction
<geist> yah 18 for every 10
<Ermine> Hell, just drop Fahrenheit
<geist> hey that aint my call.
<geist> i gotta deal wit the cards i is dealt
<zid> because like, every bad C tutorial in the world does C-32*(5/9) or whatever and I have to explain to people why that's wrong
<geist> zid: yeah that just makes it hard
<geist> it's roughtly 2:1 with the 32 offset
<zid> I have 0 practical use for F or I'd have just memorized it
<zid> when I was a small child, the weather was in F, but by the time I started caring about the weather, it was all in C
<geist> right. being here means stuck between a silly unit and then a good one, but <shrug>
<Ermine> So the transform is not linear ???
<zid> It's linear but +c
<geist> it's linear + the zero intercept being offset
<zid> mx+b or mx+c or whatever you want
<zid> c is 32, m is 5/9ths
<geist> but at least it's precise. somewhere in the last 150 years or so they re-standardized F to be precisely 32 == 0C, etc
<zid> The crossover is -40
<geist> and recisely 5/9s
<geist> so it's at least not slightly offset or some dumb thing like that
<geist> original scale was temperature of nearly frozen brine water (0F) and human body temp (100F)
<zid> (note the cross of the x axis at 32)
<heat> i think they also re-standardized SI units to be a lot more fundamental
<geist> ie, something a local dude could do on their own without any instruments when making a thermometer
<zid> yea, NIST does a lot of good work
<geist> make a themometer, do these two measurements, make a mark on the themometer, then make 8 more marks to divide it by 10s
<zid> istr a story that he fucked it up
<heat> like a kg was just defined as "the weight of this weird thing we have lying around", meaning it was just losing weight over time
<geist> yah
<zid> and the original F scale was off by a fair margin because he didn't do what he thought he did
<zid> " Fahrenheit determined his scale based on three points: He set the point at which water, ice, and ammonium chloride (a salt) stabilized as 0°F."
<zid> so not a useful salt, but salt
<Ermine> heat: afaik there is another definition of kg right now
<geist> human body temp varies a bit too, so it was already fairly silly, but yo uneeded something so that a local could reproduce it basically
<heat> Ermine, yep, they're a lot more fundamental now
<heat> related to physics and shit
<geist> yah so F is now defined in terms of SI units, so it all lines up
<zid> heat: You have to count that caesium *really* fast though
<geist> just a silly unit. *OTOH* it is kinda nice to have an expanded number set once you're used toit. i think most folks that use F natively think in terms of tens
<zid> I've seen marc explain his atomic clocks
<geist> ie, 'it's gonna be in the 50s tomorrow'
<geist> which i think is kinda nice, though obviously not required
<heat> "The kilogram, symbol kg, is the SI unit of mass. It is defined by taking the fixed numerical value of the Planck constant h to be 6.62607015×10−34 when expressed in the unit J⋅s, which is equal to kg⋅m2⋅s−1, where the metre and the second are defined in terms of c and ΔνCs."
<zid> geist: the UK does the same for a bunch of other units
<geist> oh no it's going to be in the 90s tomorrow, eek!
GeDaMo has quit [Quit: That's it, you people have stood in my way long enough! I'm going to clown college!]
<heat> since 2019
<zid> C has enough granularity
<geist> but once you get around freezing and bleow the F stuff is silly
<zid> but we tend to switch to inches instead of using fractional meters or decimeters, until it's small enough for cm
<zid> and other weirdness
<geist> yah. and UK still uses miles like the US
<zid> also fractional inches turn into mm
<geist> which i could take or leave. for long distances they're equivalently useful as far as i'm concerned
<zid> we never do fractions
<zid> I've seen american engineers they're fucking wizards with fractions lol
<heat> at least miles to kms are pretty simple to convert
<zid> "That's two and seven sixteenths too long so I'll take 3 inches off and have 8 sixteenths lef.."
<zid> just rattle that shit off
<geist> miles have the slightly nice property that if you drive about 60mph (about 100kmh) you get precisely a mile a minute
<zid> you know
<zid> that works in kph too right
<geist> so yo ucan quickly guesstimate how long it takes to get somewhere
<geist> 18 miltes from here? about 18 minutes
<zid> oh like that
<zid> if you're assuming the 60mph is fixed
<zid> nobody drives anywhere at 60mph here
<geist> sure, but it's based on the average that that's about how much you get
<zid> we don't have a 55 (plus 5) interstate system
<heat> oh gosh google says 1 mile = 1.60934 km
<zid> you're either in a city doing 12, or you're on a motorway doing 90
<heat> this has ruined miles for me, congrats
<geist> well, it's more like even if you drive 75 most of the time there will be periods where you have to slow down, and it all averages out
<zid> yea it's the golden ratio thing at least though
<zid> so 1 mile = 1.6, and 1 km = 0.6 mile
<heat> i thought it was legit 1 mile = 1.6000000000
<zid> 1.6 best number
<geist> the nice thing about km is when you're within it then 100m, 500m, etc makes total sense
<geist> vs 1/4 mile, 1/8 mile, etc
<zid> we had to have special satnav firmware
<zid> that did miles and meters
<Ermine> Stop doing imperial units, they make me upset
<geist> Ermine: there there
<zid> instead of miles and yards or km and meters
<zid> we're special snowflakes
<geist> but yeh, could go either way. when i visit canada i just switch over and doesn't bother me at all
<heat> if you want to sound tactical, say "klicks" instead of km
<zid> "Turn left in one mile" "turn left in 400 meters" "turn left in 4 feet"
<geist> within like an hour you kinda forget the others
<geist> zid: that's the hardest part to internalize about distance honestly. you get a feel for about how far 1/4 mile is when your satnav is telling you that
<zid> Not a joke, that's probably how a brit would naturally explain it
<geist> like 'oh i should really be starting to slow down or look for it'
<geist> but when its tarts telling you 300m you're like, uh...
<geist> but that you just get used to
<zid> miles -> meters -> feet -> inches -> cm -> mm
<zid> The inches and feet stuff is dying out now though, I'm a weird awkward millenial
<geist> one of the annoying things is you always have to have two sets of wrenches in your toolbox
<zid> you have to in europe still
<geist> at least in the US half the things are using 1/2 nuts, etc
<zid> because of how much shit is designed in the US
<geist> yay, okay, so we've at least inflicted that on everyone
<zid> and because of old stuff using imperial fittings
<geist> it pleases me when it's a nice solid 10mm socket
<zid> plus pipe wrenches
<zid> are always random ass nonsense
<zid> there's no metric pipe threads
<geist> i was surprised to see circuit layout stuff mostly still using mils
<Ermine> The most annoying thing is that Wii starts using imperial units when I set it to region with WiiConnect24
<zid> oh god, mils
<geist> i think that's a case where mils are just more useful because they have more resolution
<geist> sinc eit's something liek 30ish to one for mils to mm?
<zid> mils is double annoying because they're the same way we say mm
<Ermine> So I couldn't leave it so
<zid> 254 I'd assume
<zid> 25.4 even
<heat> Ermine, wii lol
<zid> mil is thousandths of an inch isn't it
<geist> yah, actually i guess that's it. 25.4
<geist> right
<Ermine> heat: yeah
<geist> so that's a more useful unit, you'd have to go to 10thousanths of a m or 100thousandths
<Ermine> Well, at least WiiConnect24 is dead now
<geist> which there's no name for that
<zid> 2.54mm is still standard pitch for a lot of components
<Ermine> heat: do you know it has both PowerPC and ARM processors?
<heat> i never had a wii
Bonstra has quit [Quit: Pouf c'est tout !]
<zid> I have a wii
<heat> i had a psp, then an xbox 360
<zid> I still use it
<heat> also a nintendo ds
<geist> okay gotta go mow now. the sun is coming out more
<zid> I need to plug it back in but I'd have to reboot my PC
<zid> master system -> megadrive -> psx+n64 -> ds -> wii
<heat> then after the xbox i fucked off and got a PC
<zid> oh, ps2
<zid> forgor ps2
<zid> I need to play final fantasy 8 steam again
Bonstra has joined #osdev
dutch has joined #osdev
Left_Turn has joined #osdev
Turn_Left has quit [Ping timeout: 250 seconds]
heat has quit [Ping timeout: 240 seconds]
heat has joined #osdev
<geist> yah i got most of the new pixel remakes of 1-6 too, i approve they're good
<geist> been slowly working through those
<zid> I played most of the way through iv then forgot about it for a couple of months
<zid> now I don't know where to go :D
<zid> I own FF1 on like.. 8 different platforms
<zid> FF2 I never actually beat, ff3 I have the DS remake for somewhere but didn't finish that either, oops
<zid> the rest I've beaten a few times each
dutch has quit [Quit: WeeChat 3.8]
dude12312414 has quit [Quit: THE RAM IS TOO DAMN HIGH]
Raito_Bezarius has quit [Read error: Connection reset by peer]
dutch has joined #osdev
Vercas694753 has joined #osdev
Vercas69475 has quit [Ping timeout: 240 seconds]
Vercas694753 is now known as Vercas69475
Piraty has quit [Quit: -]
Piraty has joined #osdev
Burgundy has quit [Ping timeout: 240 seconds]
<Ermine> gog: do you have double name?
<zid> what like, a double-barreled surname? like a posh bint?
<Ermine> first one
<zid> they're both the same thing
<zid> only middle-class people take both names here
<zid> or royalty
<moon-child> whatever you say, peter johnson
<zid> see, single surname
<zid> I am dole scum
<zid> qed
<zid> also if you had not done that on a publically logged channel I'd have been happier
<moon-child> ah sry
<moon-child> it is publicly posted on your github page, so I assumed it was fine
<zid> just easier to correlate now
<zid> for le stalkers
slidercrank has joined #osdev
goliath has quit [Quit: SIGSEGV]
<Ermine> is it ok to copypaste code snippets from efi spec?
<zid> depends if you get caught or not
<zid> do you intend to get caught
<Ermine> so no
<Ermine> okay
<zid> It's like, would you get sued for linking a meme
<heat> Ermine, probably
<heat> what are you trying to copypaste?
Left_Turn has quit [Read error: Connection reset by peer]
<moon-child> I don't see any license terms that would allow you to do that
<moon-child> but examples are generally trivial
<moon-child> so, meh
<moon-child> I wouldn't worry about it
<heat> it entirely depends. like the API is totally copypastable
<zid> It's literally the same level of evil as linking a meme
<Ermine> heat: guids, typedefs, etc
<moon-child> yeah you can definitely do that
<zid> Those you can argue are reference information for making it function
<zid> in the billion dollar lawsuit vs SCO
<heat> that's fine, API
<zid> that you're apparently expecting
<heat> you can't copyright API
<zid> is 2003 too new for Ermine
<zid> err old
<zid> and 2007 sco vs novell
<heat> Ermine was probably still googoogaga'ing in 2003
<heat> gen Z remember?
<heat> heck, i was barely alive in 03
<zid> "We own errno.h you can't write your own"
<zid> was the crux of their argument in a lot of these cases
<CompanionCube> see also: oracle's argument vs google
<CompanionCube> and SAS's argument against a competitor in europe
<zid> yea that was the other one I couldn't remember
<Ermine> heat: probably I was
<zid> That took until 2021 to resolve? wow
<zid> US courts can get fucked though, generally
<Ermine> NO
<zid> Ermine what's your favourite song
<zid> or genre
<heat> baby shark doo doo dood ooo baby shark doo do do dod o bbaby shark doo doo do do do baby shark, moooooooommyyyyyyy
<Ermine> No favourite song
<heat> he's secretly an infant
<bnchs> heat: me after a concusison in the hopital
<Ermine> And no favourite genre
<zid> cheater
<zid> heat what's yours
<zid> "lack eyed peas, let's get it started in here"
<heat> hip hop
<Ermine> It depends on the mood
<heat> *sometimes* russian doomer music
<heat> or gulf war music
<zid> name a random track you loved but haven't listened to in a while
<heat> hard q
<Ermine> Used to listen power metal
<zid> anything it doesn't have to be emblematic of your taste
<heat> what's your favourite comedian
<zid> rn probably
<zid> james acaster
<zid> his netflix specials have some godlike writing
<heat> i like pre-late-night stephen colbert
<heat> and jon stewart
<heat> older john oliver was also pretty fucking funny
<heat> now he's way more insightful but way less funny
<heat> well, just less funny, maybe not "way"
<zid> jon stewart is funny?
<zid> or even was?
<heat> yea
<heat> i also find him less funny now, but I really like his old stuff
<zid> My single favourite standup performance was probably simon amstell's do nothing live for some reason, not sure why
<zid> now answer the damn question
<zid> I'll even go first, chop suey
<heat> i don't know
<zid> you can't name a single song
<zid> that you remember liking a while back
<heat> i can name songs that I liked a while back but I still tend to like them
<heat> and/or listen to them
<gog> Ermine: sort of
<zid> I didn't say you don't have to not like them..
<zid> gog: name a random song you used to love
<heat> ok let me open my 2015 spotify playlist
<gog> uhh
<heat> march madness by future was pretty good
<heat> all of these 2015/2016/2017 playlists are nostalgia fuel to me
<gog> thank u - alanis morissette
<zid> gog was born in 1988 then
<gog> close
<zid> I don't make the rules, that's just what they say
<heat> who's they
<zid> heat born in 2004
<heat> wrong
<zid> If it's inaccurate, you failed the directions (but we already knew that)
<heat> why did I fail?
<zid> You failed to remember a single song, overthought it, then used an external reference to name a random song
<heat> fair
* CompanionCube answers the 'random song i used to love' (but that really was a long time ago): amarillo, i guess? there's probably others and much more recent ones, but that one popped into my head and i haven't thought or listened to it in a long while
<zid> by tony christie!?
<CompanionCube> apparently so, i thought it was by peter kay :p
<zid> That'd make you born in 1960
<gog> who the fuck would write a song about that place
<gog> i used to live there
<zid> the peter kay version would make you born 1994
<zid> god, peter kay was a bit of a flash in the pan
<zid> he's terrible but we still quote "Garlic bread? It's a taste sensation" to each other
<CompanionCube> lmao at the idea of boomer CompanionCube
<zid> CompanionCube: What year actually born?
<CompanionCube> zid: 1994 is *much* closer :p
<zid> what's the margin?
<zid> My guess has +- 4 errobars
<zid> probably -2 +4
<CompanionCube> the right answer is in your margin :)
<zid> gog seemed close too
<gog> you were very close
<gog> +1
<Ermine> gog: which question did you answer?
<gog> Ermine: about my name
<Ermine> Ah ok
<gog> formally i use both, informally just the first
<gog> and legally both taken together are my first name
<gog> just how it is in iceland
<zid> ermine gogsdottir
<zid> actually I don't know what ermine is
<Ermine> same as stoat
<zid> no
<zid> I know what *an* ermine is
<zid> I don't know if you're a daughter or a son
<zid> never had occasion to find out
<zid> I need to know what to buy for christmas
* Ermine ...
<gog> what are the first 16 digits of your credit card number, the expiration and the numbers on the back??
<gog> why does ovmf insist on having a gdt layout that doesn't help me
<gog> y'all are gonna hate my latest experiment
<zid> it saw you coming
<heat> because they're weird
innegatives has joined #osdev
<heat> brace thyself for a new 8086 instruction question
FreeFull has quit []
<bslsk05> ​i.imgur.com <no title>
<gog> behold this abominaation
<Ermine> please paste direct image link next time
<heat> i hate you and I'm not sure if this is well defined
<gog> it's totally not
<zid> That is direct image link
<gog> the gdt is the wildcard here
<heat> also
<gog> secret purposes
<heat> fun fax: you can totally switch paging structures if you're careful about it
<heat> it's even well defined in the spec
<gog> ok but here's the thing
<gog> what about interrupts
<gog> there's a little blurb about it in the spec
<heat> which ones?
<gog> timer i guess
<heat> tiano does not use anything apart from the timer IRQ
<heat> HOWEVER
<heat> the timer is pretty crucial
<gog> yes
<gog> there's a little blurb that if i handle any interrupts and pass them on to the firmware handler
<gog> then it's cool
<heat> yep
<gog> but i can't find any code that actually does this
<heat> because WHY
<heat> NTUS
<heat> NUTS
<gog> YES
<bslsk05> ​'it's time to stop' by TooDamnFilthy (00:00:19)
<bslsk05> ​i.imgur.com <no title>
<Ermine> NTUS sounds like windows thingie
dza has quit [Quit: ]
<gog> heat
<gog> i'm a fucken lunatic
<gog> and i need to know
<gog> how i can make a uefi application pretend to be a kernel
<gog> just for a few minutes
<gog> just while i go to the shop
<heat> define kernel
<gog> ok
<gog> it has to respond to a specific subset of system calls
<gog> with a limited set of accepted parameters
<gog> i suppose
<gog> i could switch out the gdt but i don't know what happens behind the scenes, if there are any compatibility mode codes happening
<gog> i suppose
<gog> i could COPY the gdt and extend it to be the right layout for syscall
<gog> i don't set sysret
<heat> you can't switch out the gdt as long as interrupts are enabled
dza has joined #osdev
<gog> i guess i don't strictly need interrupts then
<heat> what are these system calls you'll handle?
<heat> EFI calls will actively malfunction without interrupts
<gog> shit
<heat> USB keyboard input will be deaded for instance
<gog> then my plan is for shit
<gog> i'm exploring an old idea where the bootloader does a bunch of stuff and then ends up stepping out of the way and becomes a user mode program
<heat> it's possible there's some hack where you can indeed handle interrupts magically
<gog> the uefi part is a "kernel" for a hot minute
<gog> while i load the real kernel and get it situated
innegatives9 has joined #osdev
innegatives has quit [Quit: Client closed]
<gog> anyhow, the system calls will be like open() and read() and write() and ioctl()
<heat> all of that sounds annoying to get to work
innegatives9 has quit [Client Quit]
<gog> it's all just implementing an interface loosely-coupled by syscall
<gog> i guess i could get weird with it and make a sort of vdso thing
<gog> i'm already getting weird with it anyway
<gog> i went to oftc and asked in #edk2 but nobody answered me
<gog> the whole network is a ghost town
<heat> is anyone relevant there?
<heat> pls post users
<bslsk05> ​i.imgur.com <no title>
<heat> cute
<heat> not a lot of relevant people there
<gog> except me
<heat> yes
<heat> and leif, he's a badass
<heat> you could try and post to edk2-devel and hope you don't get ghosted?
<heat> you *may* be under moderation atm, though
<heat> i think they slap it on you if you're not subbed
<gog> i get the feeling the devs are gonna have the same reaction as you
<gog> everybody thinks i'm a crazy person
<heat> absolutely
<zid> omg leif erisson is there?
<gog> leifur eriksson takk
<gog> visamlega
<heat> but the key question is "is there a way to passthrough interrupts to EFI?"
<heat> and if so, you're ok
<gog> but i need them to know my brilliant plan to do a thing that's totally unnecessary and already a solved problem
<heat> you do not