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
gxt has quit [Remote host closed the connection]
sjs has quit [Remote host closed the connection]
Nixkernal has quit [Ping timeout: 240 seconds]
_whitelogger has joined #osdev
xenos1984 has quit [Ping timeout: 246 seconds]
Left_Turn has quit [Ping timeout: 240 seconds]
xenos1984 has joined #osdev
heat has joined #osdev
EineNdamen has quit [Read error: Connection reset by peer]
EineNdamen has joined #osdev
xenos1984 has quit [Ping timeout: 240 seconds]
xenos1984 has joined #osdev
* geist yawns
* heat yawns back at geist
* mcrod` says hi
* heat says no
<zid> less yawning more factorio sushi belt megabase
<sham1> hhh
* gog meeows
<heat> gog, kernal
d5k has quit [Remote host closed the connection]
<gog> heat: what's your favorite font and why is it papyrus
<heat> comic sans yes
<heat> i thoroughly enjoy when "normal people" use comic sans
<heat> i had an endoscopy a couple of weeks ago and the medical report was in comic sans
<bl4ckb0ne> i had a termination letter in comic sans
<bslsk05> ​i.imgur.com <no title>
rustyy has quit [Ping timeout: 255 seconds]
rustyy has joined #osdev
Yoofie1 has joined #osdev
Yoofie has quit [Ping timeout: 255 seconds]
Yoofie1 is now known as Yoofie
<heat> gog: hi gog, is open-source for nerds?
<heat> if not, why are you lying?
EineNdamen has quit [Read error: Connection reset by peer]
vai has quit [Ping timeout: 258 seconds]
gbowne1 has joined #osdev
<mcrod`> heat: fuck you too
<Ermine> heat: do you feel good?
<heat> mr stark, i dont feel so good
<bslsk05> ​mcroddev/libsame - Specific Area Message Encoding (SAME) header generator (0 forks/0 stargazers/MIT)
<mcrod`> i am a fedora maintainer no more
aejsmith has quit [Remote host closed the connection]
<heat> what's the difference between libsame and samething?
<mcrod`> nothing
<mcrod`> the core has just been moved out into a true lib
<mcrod`> SAMEthing will just be the GUI frontend
<heat> good idea
<heat> congrats dumbass
<mcrod`> fuck you
<heat> i'm proud of you you complete dumbbell
<mcrod`> stand up straight, nice and straight heat, arms out
<mcrod`> bet you look like a fucking quail
aejsmith has joined #osdev
<heat> i bet you look like a
<heat> a
<heat> a dumbass
<mcrod`> <3
<sham1> Could you both stop
<heat> #if defined(__STDC__) && defined(__STDC_VERSION__) && \
<heat> (__STDC_VERSION__ >= 199901L)
<heat> return (float)sin((double)x);
<heat> #else
<heat> return sinf(x);
<heat> #endif
<heat> YIKES
<mcrod`> sham1: listen
<mcrod`> if i really had a problem with heat, or vice versa
<mcrod`> he'd be on /ignore and we wouldn't be having a friendly jive
<mcrod`> heat: yeah.
<heat> i have you on /ignore, i'm live-reading from the log
<mcrod`> very annoying
<zid> I have you both on ignore
<heat> good, i'd have me on ignore too
<bl4ckb0ne> this chan is very quiet these days
<zid> MF Ghost finally name dropped my waifu
<zid> we're all reeling form that bl4ckb0ne
<bl4ckb0ne> i bet its because i have everybody on ignore
<mcrod`> heat: true portability
<heat> what you need is configure checks
<bslsk05> ​cmake.org: CheckFunctionExists — CMake 3.28.0-rc3 Documentation
<zid> #ifndef sinf #error don't be dumb
<mcrod`> i have those
<mcrod`> ...yeah, wait a minute
<mcrod`> why the fuck *am* I doing that?
<Ermine> heat: get better soon
<heat> while it's functionally the same thing, you might as well use the function check
<mcrod`> yes
<heat> in case you have a bizarre C environment
<mcrod`> #ifdef LIBSAME_HAVE_SINF is better than #ifdef jkwdfkskdjfkjsdkfbjskbj
<heat> FWIW musl in -std=c89 will still show you sinf
<mcrod`> that's interesting
<heat> ... and every other function
<heat> they don't care about backwards compat. glibc on the other hand tries to hide everything behind feature macros or __STDC__
<zid> linkers aren't nice enough to care about your ifdefs
pretty_dumm_guy has quit [Ping timeout: 240 seconds]
<heat> FWIW if you define a local sinf linkers will just link against your symbol
<heat> as I understand it, static linking will make *everything* use your symbol (including libc.a stuff, as long as you don't pull in sinf.o from the archive). shared linking resolves to your sinf within the program *ONLY*, I think
pretty_dumm_guy has joined #osdev
<heat> with --export-dynamic I don't know what will happen, probably external references will resolve to your program's sinf
<Ermine> sinf as in sinful?
<zid> that's the unsigned long variant
GeDaMo has quit [Quit: That's it, you people have stood in my way long enough! I'm going to clown college!]
rustyy has quit [Remote host closed the connection]
rustyy has joined #osdev
EineNdamen has joined #osdev
EineNdamen has quit [Read error: Connection reset by peer]
Burgundy has quit [Ping timeout: 255 seconds]
EineNdamen has joined #osdev
EineNdamen has quit [Client Quit]
<heat> mcrod`, TIL M_PI is not standard
<mcrod`> indeed it isn't
<mcrod`> i was hoping you'd say something about why I didn't use M_PI
* mcrod` point and laugh
<heat> actually
<heat> why so little digits of PI?
<heat> can't floats store more precision than that?
<mcrod`> no
<mcrod`> i don't think so anyway
<heat> that's a garbage PI
<heat> you have one more digit than the ones I know by heart
<zid> 3.14159265358979323 is what I know, then it goes like 82426 or something but I forgor
Matt|home has joined #osdev
<heat> https://godbolt.org/z/nsbh47csf yikes, floats are garbage
<bslsk05> ​godbolt.org: Compiler Explorer
<zid> try .20f
<zid> the default printf specifier is just bad
<zid> 3.14159265358979311600
<heat> ew, printf is garbage
<zid> so the amount of pi I remember is perfect for a float then
<zid> it stops at 31 and I remember until 323
<heat> mcrod`, your PI SUX, plsfix
<mcrod`> o
<mcrod`> yes i'll fix
<heat> i guess limiting precision to a low number kind of makes sense? you usually don't want all the decimal digits when printing
<gog> hi
Left_Turn has joined #osdev
<mcrod`> hi
<bslsk05> ​i.imgur.com <no title>
<bslsk05> ​i.imgur.com <no title>
<mcrod`> you ok
<heat> perdón amigo, pero yo solo entiendo comic sans
MiningMarsh has quit [Quit: ZNC 1.8.2 - https://znc.in]
<Ermine> heat: afaik M_PI became standard since c99
<heat> no
<heat> it's just not standard, just an extension
<mcrod`> M_PI is yoonix
<Ermine> had situation when compiler refused to take M_PI with -std=c89 and was fine with -std=c99
<gog> hi
<Ermine> And all that was compiled with -Wpedantic and god knows what else
<Ermine> gog: may I pet you
<mcrod`> cmake people are funny
Left_Turn has quit [Remote host closed the connection]
<gog> yes
<mcrod`> "why do you WANT to change the default flags"
<gog> heat: bazinga
Left_Turn has joined #osdev
* Ermine pets gog
<mcrod`> don't you pine for the days where men were men and wrote their own makefiles
<heat> no
<heat> fuck make
<mcrod`> well fuck cmake even worse
<heat> you picked it
<heat> you IDIOT
<mcrod`> :(
* Ermine wants to write his own makefiles
<gog> i wrote my own makefiles and then turned into a woman
<heat> meson is better you should try it
<gog> explain that mcrod`
<heat> what make variant did you use gog?
<gog> gnu make
<heat> GNU make has ESTROGEN
<Ermine> gn gn gn gn
<gog> nice
<heat> bmake is super manly (which you already are, as you use BSD and may have never seen a woman ever)
<mcrod`> my girlfriend saw that comment
<mcrod`> and she has no idea what you're on about
<gog> i'm the manliest girl here
<gog> ugh no
<mcrod`> also i've seen gog, a girl
<gog> i hate that
<Ermine> Wow girlfriend
<mcrod`> yes
<Ermine> You're immune against Bryan Cantril's argument, congrats
<mcrod`> gog: wut
<heat> gog, you're such a girly girl you girl'd yourself
<gog> calling myself the "manliest girl" made me feel deeply terrible
<gog> in a dysphoria way
<gog> don't like it
<mcrod`> :(
* mcrod` hug
<heat> yes, congrats you just transphobe'd yourself
<gog> lmao
<gog> the transphobia is coming from inside the trans
<heat> mcrod`, exactly, women usually do not know what BSD or linux are
<heat> unless it's a trigger word to LEAVE THE DATE
<gog> half of th ewomen who do are trans ime
<heat> "I use linu-" *leaves*
<mcrod`> to be fair
<vaxuser> heat: i picked one up with bsd
<vaxuser> heat: so i think you are full of shit
<heat> did you kiss her?
<gog> did
<gog> fuck
<vaxuser> yep
<heat> without a solaris license???
<vaxuser> she was kind of a nerd tho
<heat> (X) Doubt
<gog> i like nerdy girls
<vaxuser> however, at the time i did not know about PERFORMANCE
<vaxuser> maybe that's how it happened
<mcrod`> fucking christ
<mcrod`> this control flow is weird
<mcrod`> and my brain is going to explode
<mcrod`> and i’m trying desperately to figure out a way to simplify it
<heat> vaxuser, if a girl ever asks you what you do, please don't say "microoptimize synchronization primitives such that they're not PESSIMAL"
<mcrod`> it involves setting the appropriate flags for compiling
<mcrod`> if clang or gcc, you’re getting these flags no matter what
<mcrod`> doesn’t matter the build type
<heat> sir have you considered using meson
<mcrod`> no shut up
<heat> or bmake where the b stands for best
<vaxuser> why is this channel hostile
* vaxuser pets heat
<mcrod`> a problem is I have to or should use -O0 if i’m doing unit tests
<mcrod`> because code coverage
<heat> vaxuser, <3
<mcrod`> i think i just have to say “you cannot enable benchmarks and unit testing in the same config”
<heat> i have no problem with -O2 and code coverage
<heat> (granted, i don't use it much)
<mcrod`> as far as I know
Left_Turn has quit [Ping timeout: 246 seconds]
<mcrod`> the standard wisdom is -O0 for code coverage
<heat> my standard wisdom is to ignore standard wisdom because IKB (I know best)
<heat> also i've seen nothing to hint me that -O2 code coverage is broken. worst case, you have less branches
Left_Turn has joined #osdev
Left_Turn has quit [Ping timeout: 240 seconds]
Left_Turn has joined #osdev
Left_Turn has quit [Ping timeout: 240 seconds]
rpnx has joined #osdev
Left_Turn has joined #osdev
<geist> whew, been busy the alst few days
<geist> got a good haul of free retro computer hardware, been fiddling with
<bslsk05> ​redirect -> photos.google.com: vintage computer haul 2023 - Google Photos
<vaxuser> motherfucker
<vaxuser> in a positive sense
* vaxuser == jelly
<heat> OMG A SPARC
<gog> does it run solaris
<geist> few more pics uploaded
<geist> actually it does, solaris 10 on it
<puck> ooh, welcome to the vt320 club :p
<gog> dang you're gonna kiss so many girls
<vaxuser> ye, just make sure to not install linux on it and you will be golden
<puck> i wanna get a sparc that's actually reasonable to run at home
<vaxuser> lol
<puck> i have a sunfire t1000 :v
<mcrod`> i only have a packard bel
<mcrod`> l
<vaxuser> may i suggest you go back in time 30 years
<puck> oh wait also huh
<puck> amber vt320
<puck> mine is white
<puck> or well. blue-yellow phosphor
<geist> it's a lovely screen. interesting that it makes no CRT sound at all. completely silent
<geist> and usually i'm extremely sensitive to that
<puck> geist: it's running at like. 70Hz?
<geist> i dunno
<puck> it's not using normal flyback frequency
<zid> geist too old to hear 15khz anymore
<zid> rip
<geist> yeah must be really high
<puck> geist: i do have a funny little .py file
<geist> well, i haven't personally tested the 15khz sound in a few months, but i seriously doubt i suddenly stopped being able to hear it
<zid> I've never really owned any 15khz gear at all :(
<zid> 28-31 for life
<geist> the microvaxen are nice actually. i just learned how to reset the SYSTEM password on a VMS machine so was fiddling with
<geist> 2 of the 3 work. the last one has a bad PSU
<puck> https://puck.moe/up/nihip-fokap.tgz installs spleen as the font on the vt320
<puck> (temporarily)
<heat> vaxen patchen
<geist> and i haven't been able to start the vax server yet since it has a different IEC power plug
<geist> (C15 vs C13)
<geist> puck: yeah the 320 seems fairly powerful. basically same as a vt220 but a lot of extra memory and features
<puck> geist: i wish it wasn't harvard arch tho :(
<puck> geist: i bet i could've gotten RCEs onto it
<heat> geist, what's that running on the vt320?
<geist> oh and i left out that one of the machines (the metal rackmount on the floor) is a PDP-11/53
<puck> also i need to build a little pi pico w based serial terminal for it
<geist> heat: that's connected to the vaxstation next to it, running VMS 7.3
<puck> geist: annoyingly the modem connection on the vt320 isn't compatible with rs232 ports
<puck> unless you use software flow control
<geist> yah i have a MMJ cable for it, but the plug is a bit flaky, so i'll have to see if i can fix that
<puck> which .. requires a preexec on agetty, and some careful work because agetty doesn't understand XON/XOFF and will break really confusingly if it sees theme
<puck> i'm tempted to make an MMJ to pi pico w adapter
<geist> oh interesting, that's a shame. the 220 had a DB25 right?
<puck> yes, the vt320 has a db25, but the pins used don't all translate to db9
<geist> yah they seem to really be into XON/XOFF
<puck> like, it's meant to connect to a hardware db25 port, like on .. a modem
<geist> it seems to work fine, sinc eyou can use the pause button on the terminal and it seems to properly tell the host to stop, etc
<puck> the mmj is what yo uconnected computers to iirc
<geist> unless that's an ESC sequence
<puck> hardware flow control works fine tbh, but just not on plain db9 <-> db25 cables
<geist> yah i have a MMJ to DB25 and then various chains of serial cables, so i was able to get it to talk to the sun machine
<geist> the ultra 2 wants to run a gui though, and what i forgot to pick up was a sun keyboard, so i'll have to hunt on ebay for a type 5 or whatever it needs
[_] has joined #osdev
<puck> i wanna get a proper sparc i say having two sparcs (a krups, and a sunfire t1000)
<gog> i want any retro computer that isnt a pc clone
<puck> (the krups is slowly falling apart, but runs both javaos and netbsd fine)
<gog> itaaaaaaaaaaanium
<puck> gog: isn't early EFI just the BIOS but via function call instead of interrupt
<gog> basically
<gog> with additional things
<gog> it has an event abstraction, a timer, file io, memory management
<geist> yeah the sparcstation LX doesn't start, but i think they're notorious for having flaky power supplies
<geist> so i'll fiddle with that in a bit
<geist> first thing i did was systematically take out all the scsi drives and archive them on another machine
[itchyjunk] has quit [Ping timeout: 272 seconds]
rpnx has quit [Ping timeout: 260 seconds]
<heat> puck, no
<heat> early EFI was AFAIK it's whole thing
<heat> started by intel as the IBI (Intel Boot Initiative) to design a whole new thing
<heat> not "BIOS blob but funcptr"
<geist> also on itanium first
<geist> though i dunno if they intended to move that over to x86 eventually, or if they just intended for itanium to suppliant x86 so much that they'd never have to bother with it
<heat> IBI first popped up for PC I think
<geist> https://liam-on-linux.livejournal.com/75593.html seems to be a pretty good inside summary
<bslsk05> ​liam-on-linux.livejournal.com: 403 Forbidden
<gog> haha linux users flinging poop
<geist> watched the 3+ hour interview with Dave Cutler the other day, that actually lines up with what he said too about porting windows to x86-64
<geist> apparently they talked to AMD, loved it, started a port and were pretty fixated on that
<heat> geist, that looks like a very biased source
<geist> i could see intel coming along later and telling them to talk to the hand
<geist> well, sure. take whatever grain of salt you want, but it seems fairly legit
<gog> didn't amd affect the course of x86 in one other way
<vaxuser> tales of greatness have to considered fan fiction
<vaxuser> have to be*
<gog> when intel filed a lawsuit and the courts dismissed it
xenos1984 has quit [Read error: Connection reset by peer]
<geist> hey vaxuser, i got more vaxen
<geist> you like vaxes right, vaxuser?
<geist> lets talk about vaxen
<vaxuser> vax was great
<vaxuser> why are you even talking shit on irc from your lindows box
<vaxuser> when you could be ircing from solaris
<geist> mac you dork
<vaxuser> on a sparc
<vaxuser> l ol that's even worse
<geist> it's UNIX®
<gog> boot up the sparc into solaris and irc from that
<vaxuser> 's what i'm saying
<vaxuser> or that vax
<gog> until then you will get no regard from bryan cantrill
<geist> yeah, well, like i said the main reason is i dont have a sun keyboard
<vaxuser> what about the vaxen
<geist> i forgot to pick it up, so without a keyboard it wont start the ui
<gog> o
<geist> well, i have gotten them working, but need to get the TCP/IP stuff configured
<vaxuser> tcp/ip? pretty mainstream
<vaxuser> no token ring or some shit
<geist> not in like 1984
<geist> oh yeah one of the lovely things about DEC hardware is they went hard on ethernet from the get go, so at least even pretty old shit has eth
<gog> noiscj
<geist> of course nothing that old will connect to modern SSL stuff, but that's a general problem with all of these things
<vaxuser> that's ok
<vaxuser> you can telnet to your laptop
<geist> yup
<vaxuser> i would say that counts
<geist> heh. i could and maybe will endeavor to do that by the days end
<vaxuser> years ago i donwloaded a vax emulator + bsd bundle for windows
<geist> mostly i had to archive all the scsi drives in case they fail, and then figure out how to reset the SYSTEM password so i could log in
<geist> yah i might install BSD 2.11 on one of these. that'd be fun
<vaxuser> so i booted a windows vm on my bsd laptop to run a vax emulator + bsd, ran telnet from that to my laptop
<vaxuser> and ssh'ed from there out to my irc host
<vaxuser> it was suprisingly functional, everything fine except there were no colors
<geist> yep. the VT320 is actually quite beautiful. amber screens are very pleasant to look at
<geist> green too
<geist> and it's extremely sharp, no burn in
<vaxuser> i think i had a green-ish monitor for atari
<vaxuser> it had higher resolution than tv but color pallete was almost non-existent afair
<vaxuser> but maybe i'm misremembering
<geist> thing is the old B&W CRTs dont have a screen on them since there's no need to separate the different colors
<geist> so the pixels actually connect with each other, so it actually looks great
<geist> really only modern high DPI LCDs match it perfectly
<geist> also got a VAX/VMS internals and data structures book, which is fantastic
<geist> totally describes in detail what the OS does
<geist> that was back in the day when you documented your shit
<vaxuser> wait, do you have a lk port to vax?
<geist> i do
<vaxuser> noice
<vaxuser> networking?
<geist> pretty basic, just the plain basic shell port
<geist> never enabled the MMU, that was the next thing
<vaxuser> oh
<vaxuser> well ircing from vax with your own kernel would be a chad move
<geist> heh yeah
<geist> on a 800W vax server, shit yeah
<geist> haven't fired it up but it probably sounds like a vaccum cleaner
<geist> also i think it has like 16 serial ports, so could do PPP or SLIP or something
<geist> that's the console port + eth + those big connectors having a lot of serial ports
<vaxuser> slip is one the things i read about quite a bit but never bothered to try
<vaxuser> while still had serial port on my laptop :X
<geist> i dont think ther'es much to it, i think you just HDLC frame IP ports over it
<geist> so the usual ESC sequence for start of frame and then esc if the esc characters shows up, but otherwise it's just raw binary
<vaxuser> in terms of implementing the thing i don't think there is anything to it
<geist> and i think both sides have to up front know their addresses
<vaxuser> configuring the systm to work probably runs into lol interop problems
<vaxuser> unless this is somehow a standard(?)
<geist> PPP has the more powerful ability to negotiate the addresses
<geist> nah i think SLIP is basically standardized. probably an RFC for it
<heat> geist, ok, just checked. it seems that the accepted narrative was that IBI came up because of Itanium, but they had recognized the shortcomings of the BIOS for PC too. somewhere around 04 or 05 they had an IA32 port already
<vaxuser> oh 1055
<vaxuser> ok
<heat> i can't quite pinpoint *when* all of this stuff happened, it's not /really/ written down
<heat> IBI itself was in 98
<vaxuser> are tehse ports 115.200?
<geist> yah and tha's about right, because AMD did the AMD-64 stuff in like 2003 and that was when MSFT started working on it, etc
<vaxuser> iperf over slip would be glorius
<geist> vaxuser: dunno, actually
<geist> the general console port speed for these is 9600, but the main serial ports may do more
<geist> OTOH there is an ethernet port there, 10mbit
<geist> just need an AUI connector or a thinnet, which i have both of
<geist> it is interesting reading the vax manual and the vms manual, and i wonder how much the design of the cpu influenced early OS design
<geist> notably things like the interlocked list insert and remove lets you design data structures around that
<geist> and the 32 interrupt priority levels which are quite easy to raise/lower, so VMS used it quite frequently for various kernel IRQ levels (something that clearly got pulled forward into NT)
<geist> ie, sert IPL to 24 and now timers can't interrupt you, set it to 22 and timers can but regular network interrupts cant, etc
<vaxuser> unixes were notorous for this
<vaxuser> spl*
xenos1984 has joined #osdev
<geist> and then 1-15 are soft IPLS, so they have this notion of like >=IPL4 means you can no longer accept page faults, etc
<geist> yeah
<geist> probably inherited from VAX, since that was just how the hardware worked. it had 15 irq vectors for IPL 1-15, that would latch and fire as the IPL level lowered
<geist> so you could be at IPL10, set an IPL5 DPC, which would fire as soon as you lowed the IPL
<geist> so there was lots of queue and have the hardware fire later
<geist> which windows does, though presumably emulated in software
<geist> would be easy to do too, you just set up your DPC, and INSQUEUE it into the level 5 queue with a single instruction, and set the bit
<bslsk05> ​vzimmer.blogspot.com: Vincent Zimmer's blog: Search results for Intel boot initiative
<heat> a lot of really insightful posts from one of the main people behind EFI
<geist> noice
<heat> i can't quite pinpoint when IA32 EFI was available. he talks about a different effort from another team in DuPont to write a new boot path from scratch
<heat> different from the BIOS garbage
Arthuria has quit [Ping timeout: 252 seconds]
<geist> ah interesitng, the 3800 has two DSSI 5.25" scsi drives in it
<geist> DSSI and SCSI are apparently closely related, but the pinout is different :)
gog has quit [Ping timeout: 240 seconds]
<geist> well, the pinout is close, but it seems the power pinout is differnet, different shaped molex
<geist> well, will fiddle with that later, when i have a power cable for this thing
goliath has quit [Quit: SIGSEGV]
zxrom has quit [Quit: Leaving]
kriztmark has joined #osdev
agent314 has joined #osdev