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
spikeheron has quit [Quit: WeeChat 3.7]
<epony> anytime for you, kid ;-)
<epony> were you good this year?
<kaichiuchi> if you were naughty you get the c++ programming language by bjarne stoustrup to read
<zid> Christmas is bad, honzuki comes out on monday, christmas is on sunday
<zid> ergo boxing day is indeed the best day
<kaichiuchi> what's honzuki
<kaichiuchi> oh
<zid> (not sure if it actually will come out, maybe quow is on vacation)
<gog> i was very naughty this year
<epony> you get a new year then
<zid> That's why santa is bringing you a solar panel
<gog> ooh
<gog> that'll be useful for half the year
<epony> the new year is useful the entire year
<epony> you can have all 365 days spent at work
<gog> nah
<epony> with is the best place to spend your days
<epony> "work"
<zid> (It used to be coal but it's 2022 now)
<zid> Solar panel still a bad gift for icelander
<epony> it's warm at work
<epony> has coffee midgets and snowhite
[itchyjunk] has joined #osdev
<kaichiuchi> linux decided to freeze on me
<kaichiuchi> i’m going to give it 5 minutes before killing it
<zid> sysrq?
<kaichiuchi> nothing
<kaichiuchi> oh wait
<kaichiuchi> think i used the wrong combo
<kaichiuchi> nope
<kaichiuchi> it’s completely dead
<gog> F
<kaichiuchi> journalctl doesn't show me anything important either
<epony> but the weather outside's delightful.. let it be let it be let it be
<kaichiuchi> wow
<kaichiuchi> i haven't compiled linux since I was like 15
<kaichiuchi> but it took only 2 minutes to compile linux on my machine
<kaichiuchi> jesus christ
<zid> for someone used to C++ that must be near instant
<gog> never compile anything
CryptoDavid has quit [Quit: Connection closed for inactivity]
sweetleaf has joined #osdev
<epony> the Linux kernel was compiling slow on a really really fast machine in 1998
<epony> it's worse now
<epony> and the "tuning" to remove all those knobs, oh the tiring stupidity
<epony> it was disgusting, it had become a monster 24-25 years ago
<epony> a monster that does not do all that much, just being written sloppily by people as competent as visual basic can elevate you to become
<epony> it's not the ++ where your problems are
<epony> get it? ;-)
epony has quit [K-Lined]
gog has quit [Ping timeout: 246 seconds]
Terlisimo has quit [Quit: Connection reset by beer]
novasharper has joined #osdev
Burgundy has quit [Ping timeout: 268 seconds]
ZipCPU has quit [Read error: Connection reset by peer]
ZipCPU has joined #osdev
<mats2> happy kwanzaa
Terlisimo has joined #osdev
invalidopcode has quit [Remote host closed the connection]
terrorjack has quit [Quit: The Lounge - https://thelounge.chat]
invalidopcode has joined #osdev
terrorjack has joined #osdev
elastic_dog has quit [Ping timeout: 246 seconds]
elastic_dog has joined #osdev
[itchyjunk] has quit [Remote host closed the connection]
_whitelogger has joined #osdev
invalidopcode has quit [Remote host closed the connection]
invalidopcode has joined #osdev
alexander has quit [Quit: ZNC 1.8.2+deb2+b1 - https://znc.in]
alexander has joined #osdev
invalidopcode has quit [Remote host closed the connection]
invalidopcode has joined #osdev
ZipCPU has quit [Ping timeout: 268 seconds]
poisone has joined #osdev
ZipCPU has joined #osdev
ZipCPU has quit [Ping timeout: 268 seconds]
ThinkT510 has quit [Quit: WeeChat 3.7.1]
ZipCPU has joined #osdev
ThinkT510 has joined #osdev
ZipCPU has quit [Ping timeout: 265 seconds]
ZipCPU has joined #osdev
ZipCPU has quit [Ping timeout: 252 seconds]
MiningMarsh has quit [Quit: ZNC 1.8.2 - https://znc.in]
MiningMarsh has joined #osdev
invalidopcode has quit [Read error: Connection reset by peer]
invalidopcode has joined #osdev
heat has quit [Ping timeout: 246 seconds]
GeDaMo has joined #osdev
CryptoDavid has joined #osdev
ZipCPU has joined #osdev
Turn_Left has joined #osdev
Left_Turn has quit [Ping timeout: 265 seconds]
Turn_Left has quit [Ping timeout: 248 seconds]
vdamewood has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
<ddevault> tbh
<ddevault> aarch64 is pretty complicated and the boot story sucks
<ddevault> but so far I kind of like this architecture
<ddevault> gives you a shitload of control
<ddevault> boot story => hence all the misery with figuring out EFI, it'll be a cold day in hell before I write SoC-specific kernel builds
invalidopcode has quit [Remote host closed the connection]
invalidopcode has joined #osdev
<Ermine> Are you suspending your efforts?
<ddevault> no? what made you think so
<ddevault> aside: hm, eret does not take me to ELR_EL1, but to some other random address
<bslsk05> ​paste.sr.ht: paste.txt — paste.sr.ht
<bslsk05> ​paste.sr.ht: paste.txt — paste.sr.ht
<ddevault> pebkac
<ddevault> got it working
<clever> ddevault: i would expect it to take you to ELR_EL1, perhaps it faulted immediately, and your exception table isnt fully initialized?
<clever> what was it?
<ddevault> was setting ELR_EL1 rather than ELR_EL2
<clever> ah, where you in EL2?
<ddevault> yeah
<clever> thatlll do it
<clever> there is an aarch64 extension, to make EL2 act more like EL1
<ddevault> no thanks
<clever> so ELR_EL1 becomes an alias to ELR_EL2, and so on
<ddevault> just wanted to get out of EL2 asap, and I have accomplished that
<ddevault> let's see if it works on hw
<clever> so you can be in EL2, but write your code like you where in EL1
<clever> ah, if you just want to get the heck out, yeah, ignore the extension
<clever> its more for staying in EL2, but writing your code for EL1
<ddevault> seems to work to the best of my knowledge
<clever> so one kernel can work in both EL2 and EL1
<ddevault> but will not know for sure until I have a working serial driver for the rpi in my kernel :')
<clever> there are 2 types of serial controllers on the rpi
<ddevault> aware
<ddevault> using the pl011
<clever> i have examples on configuring the PL011 fully
<clever> most guides just assume the refclk, or ask the mailbox for it
<ddevault> share?
<bslsk05> ​github.com: lk-overlay/start.S at master · librerpi/lk-overlay · GitHub
<ddevault> ty
<clever> GPIO_FSEL1 is to mux the uart onto gpio 14/15, it might differ some on the pi4
<clever> CM_UARTDIV sets the divisors for either a 19.2mhz or 54mhz crystal
<clever> CM_UARTCTL sets the uart refclk to be based on the raw crystal
<clever> the rest are standard PL011 regs, to divide it down further, to 115200
<clever> usually, this clock is divided down from a 500mhz PLL
<clever> but in this case, i'm getting the uart up before the PLL
<clever> and its far more stable, if you plan to mess with the PLL's
<ddevault> one thing I'm turning over in my head is how to bring up the serial port without making it rpi-specific
<clever> device-tree describes a few things, that make that more possible
<ddevault> yeah
<clever> 1: the gpio driver you should use (youll need a pi specific one, but DT selects it)
<clever> 2: the uart driver to use, PL011
<clever> 3: which pins on the gpio the uart is on
<clever> 4: the clock driver to use (again, pi specific)
<clever> 5: what clock channel to use as the uart refclk
<clever> 2 should then use 1/3 to mux the pins, and 5/4 to get the refclk, then compute a divisor and setup the PL011
<clever> if modularized properly, you can just make a new 1/4 for each platform
<ddevault> 3 is unclear, reading over this device tree
<clever> and DT will select the right one on bootup
<clever> one sec
<ddevault> line 1168
<bslsk05> ​github.com: rpi-open-firmware/rpi2.dts at master · librerpi/rpi-open-firmware · GitHub
<clever> its the pinctrl lines (which i have commented out)
<clever> this is a poor example though...
<ddevault> also annoying dependencies between things in the device tree that my fdt prober is not prepared to handle
<ddevault> luckily the dt just /happens/ to be ordered such that I shouldn't *have* to worry about it...
<bslsk05> ​github.com: linux/bcm2835-rpi-zero.dts at rpi-5.15.y · raspberrypi/linux · GitHub
<clever> this says that you should look for a uart0_gpio14 node elsewhere (dtc will pin in a phandle to it)
<clever> and that describes the gpio's involved in the uart
<ddevault> anyway for now I'm going to go with Hacks
<bslsk05> ​github.com: linux/bcm283x.dtsi at aeaa2460db088fb2c97ae56dec6d7d0058c68294 · raspberrypi/linux · GitHub
<clever> this then has platform specific data, that 1 understands
<ddevault> namely if /:compatible == raspberrypi then the pl011 driver will overreach and configure other things as well
<clever> so when the uart driver wants to enable the uart, it can just pass this object to the gpio driver
<ddevault> I see
<clever> clocks = <&clocks BCM2835_CLOCK_UART>,
<clever> and this line within uart0, says to talk to the clock driver
<clever> and ask for the uart clock
<clever> clocks = <&clocks BCM2835_CLOCK_UART>,
<clever> clocks: cprman@7e101000 {
<clever> compatible = "brcm,bcm2835-cprman";
<clever> and this then says which clock driver to use
<ddevault> right
<clever> so you need a brcm,bcm2835-cprman driver, that understands that BCM2835_CLOCK_UART refers to CM_UART{DIV,CTL}
<ddevault> another thing which is frustrating here is that I have a micro-kernel and it really shouldn't contain any drivers other than the serial port for debug logging
<ddevault> but to make this not hacky I will need more drivers
<clever> either assume the uart is pre-configured by a previous stage, or just dnt do uart until userland has setup the hw for you
<ddevault> hm, maybe I can just assume that the uart just werks
<ddevault> edk2 sets it up after all
<ddevault> let's try just writing to UARTDR and seeing what happens
<clever> i do similar in several of my stages
<clever> the 1st stage brings the uart up, and the later stages just blindly write to the data fifo
<clever> the start.S i linked above, is bringing the uart up before the bloody stack or dram!!
<clever> so i can then print debug while setting up the ram
<clever> and thats why its not using DT or anything smart
<clever> but its also written in an assembly language only the pi can run
<clever> so it cant run on the wrong device!
<ddevault> precisely what I want to avoid
<ddevault> making an earlier stage set it up is a good idea
<clever> when i was debugging eret code before, i wrote a .S macro, that would use some unused regs, and print a single char to the uart, ignoring all setup
<clever> and thats how i was able to debug that i was in the wrong EL
<clever> originally, the rpi firmware ran kernel.img in EL1
<clever> but then people wanted hypervisor support in linux, so it was modified to run kernel.img in EL2
<ddevault> I am happy that the world has collectively agreed upon the same set of sane default serial settings
<clever> and lk-overlay wasnt able to drop from EL2->EL1
<clever> and crapped the bed, when it setup EL1's mmu, then jumped to a virtual addr, while still in EL2!
<clever> i need to revisit that firmware code more, and try to get uboot and efi going
bgs has joined #osdev
<ddevault> hah, another pebkac
<ddevault> been spending so much time on my bootloader that I kept copying /only/ the bootloader to the microSD card when I wanted to test new kernels instead
<clever> tried netboot or usb-device boot?
<clever> it speeds up development massively
<ddevault> usb has issues
<ddevault> might do netboot at some point
<ddevault> or update my bootloader to pull the kernel over serial
<clever> did you use usb-host or usb-device?
<clever> the firmware initrd also helps
<bslsk05> ​www.raspberrypi.com: Raspberry Pi Documentation - Raspberry Pi hardware
<ddevault> by issues I mean I put my EFI bits on a flash drive and booted it up and it didn't even make it to edk2 and I spent no further time debugging it
<clever> 2 is network boot
<ddevault> other fish require frying at this stage
<clever> 3 is usb-device boot, the usb-c port, to another pc!
<clever> 4 is usb-host via an xhci card, the main 4 usb-a ports on a pi4
<clever> but now that you say efi, that reminds me, the efi firmware has its own range of supported sources, and may not agree with all of those fancy options
<clever> and edk2 has its own http based netboot
<ddevault> http netboot?
<clever> most of my dev cycles involve either tftp or usb-device
<clever> so i just run `make`, whack the reset button, and it runs
<clever> no need to copy any files, or juggle cards
<ddevault> that sounds comfy
<ddevault> except that the rpi4 does not have a reset button, the bastards
<clever> it does
<clever> the RUN header
<ddevault> it has some pins I can short
<clever> yep
<ddevault> requires work(TM)
<clever> i put the reset button from an old PC case onto those pins
<bslsk05> ​edk2-docs.gitbook.io: Introduction - Getting Started with UEFI HTTPS Boot on EDK II
<ddevault> ty
<ddevault> I will set this up once I get the basics in place and I'm ready to start more serious iterative development on it
<ddevault> anyway: ta-da: https://l.sr.ht/Wb3o.png
<clever> nice
rorx has quit [Ping timeout: 246 seconds]
<clever> ddevault: https://www.youtube.com/watch?v=BQyyVtmmVg8 is the most advanced thing ive done
<bslsk05> ​'rpi open firmware boot' by michael bishop (00:02:23)
<clever> there are 4 sprites on the screen in that demo
<clever> one static sprite for the firmware framebuffer, in the top half
<clever> one static sprite for the linux framebuffer, bottom half
<clever> one sprite with the rpi logo and the XY animated, to demo the 2d accel
<clever> and one full-screen sprite with alpha, double-buffering, and vsync flips, to display the output of the 3d core
<clever> the spinning triangle is then rendered on the 3d core
<clever> all while linux boots on the arm, and is entirely unaware of everything fancy over its framebuffer, lol
<ddevault> impressive
<clever> but in that current setup, linux cant access any 2d or 3d accel
<ddevault> at the moment my goal is to port my kernel and then use it to display a slide deck
<clever> so from the linux end, you have just a dumb /dev/fb0 and no page flipping
<clever> tearing city!
<bslsk05> ​github.com: lk-overlay/slideshow.c at master · librerpi/lk-overlay · GitHub
<clever> this is an arm-less demo of the 2d stack
<ddevault> hehe
<ddevault> seems you had the same idea, eh
<clever> it loads a dir of tga files from an SD card
<clever> and then cycles thru them
<clever> its heavily async in its design
<clever> there is one array of loaded images, and a thread flips thru them at regular intervals on vsync
<clever> a different thread then decodes the images and inserts them into the array
<clever> so there isnt any stuttering from loading images
<ddevault> nice
<clever> and once loaded, every image is a 2d bitmap in ram, and never loads again
<ddevault> I don't have anything quite so fancy in mind
<clever> but that limits the total image count, because it caches them all uncompressed
<ddevault> I will probably at least do vsync to avoid tearing because that'd be embarassing
<clever> for the 2d core, you give it a list of images
xenos1984 has quit [Read error: Connection reset by peer]
<ddevault> I'm doing a talk about Hare in february and I want to present the slide deck from a device running an OS written in Hare
<ddevault> just doing dumb framebuffers, I only have five weeks lol
<clever> for each image, you give it a dest XY, a source WH, a dest WH, a stride, a pixel format, and the addr in ram
<clever> the hw will dynamically fetch image data and composite it on the fly, racing against the electron beam
<clever> if designed right, you can have zero-copy rendering
<clever> on vsync, you just change the pointer to the latest frame
<ddevault> aye
<ddevault> I may experiment with cleverer approaches depending on how soon I have the kernel port done
<clever> but there are some complications in the pi4 case
<clever> the 2d core, can only read the lower 1gig of physical ram
<clever> so you must allocate your framebuffers from that region
<ddevault> I'm reasonably confident I can have a framebuffer online and can just blit slides into it within five weeks
<ddevault> anything more than that is a bonus
<clever> and they must be physicall contigious
<ddevault> good to know, thanks
<ddevault> might have to rejigger some stuff
<clever> linux solves that with the CMA heap, a dedicated region of ram for large buffers
<clever> but it can still suffer from fragmentation
rorx has joined #osdev
<clever> the official firmware solves it with a relocatable heap (also seen on no-mmu palmos)
<clever> where all objects are referenced by a handle, not a pointer
<clever> and they can be dynamically moved to defrag the heap
<ddevault> in demo mode, not good long-term solutions mode
<ddevault> will get there
<clever> the lock() function will return the current phys addr, and stop it from moving
<clever> unlock() allows it to move again, and you must forget the phys addr
<ddevault> in fact after the demo I'm likely to forget about aarch64 entirely for a while and go back to focusing on x86_64
<ddevault> will probably set up CI so I don't break it, though
<clever> my CI produces a zip file, that you can just unpack to a freshly formatted fat32
<clever> and that will then boot
<clever> includes everything, firmware, config, kernel, dtb
Burgundy has joined #osdev
<ddevault> not doing SoC-specific builds
<ddevault> my build outputs the kernel as an ELF file and the bootloader as an EFI PE/COFF executable
<ddevault> rest is on you
<clever> ah
<clever> in m case, my whole project is to replace the rpi firmware
<ddevault> to be fair, "the rest" is not much
<ddevault> drop edk2 bits on an SD card
<clever> so the firmware is the primary output of CI
<ddevault> stick bootloader at /EFI/boot/bootaa64.efi
<ddevault> drop kernel at /
<ddevault> and that's it
<ddevault> add a dtb at /helios.dtb or (better) turn on device tree mode in the edk2 settings
freemint has joined #osdev
<clever> ddevault: one thought i just had, make an x86_64 efi bootloader, that reads acpi, turns it into DT, and then runs your kernel
<clever> then the kernel can expect DT even on x86
<clever> that would also allow it to work on non-dtb arm
<ddevault> I do want to make an x86_64 bootloader at some point
<ddevault> but DT is foreign enough on x86_64 that I'd rather not include it
<clever> its either that, or some custom bootloader<->kernel api
<ddevault> I do have something like a custom bootloader<>kernel API
<ddevault> my kernel is just an ELF file because fuck anything else
<ddevault> first ABI parameter includes boot details
<ddevault> on aarch64 this is some custom stuff including kernel load address and device tree address
<ddevault> on x86_64 this is the multiboot header
<clever> ive also made my own protocol, but for cases where i cant control the initial values of registers
<clever> there is a magic# within the sections the ELF loads
<clever> and after that is a pointer to some dtb
<clever> the bootloader searches for the magic, and fills in the pointer
<clever> but its also not standard device-tree
<clever> i'm just abusing the dtb libs to ferry over a custom tree of props
<clever> like how you might use json to feed whatever to something
<freemint> I am using RockyLinux 8.6 but this community might have the expertise to help with my question. I got an PCIe card with 24GB on board memory ( https://en.wikichip.org/wiki/nec/vector_engine/type_10c ). The driver fails to initialize it. From getting the same card working before in a different PC i know that the issue is that the Region 0 according lspci is smaller than it should be, once that is fixed the card worked. In a
<freemint> Fujitsu Primergy TX140 S2 (xeon e3-1230v3, 16 GB RAM) Region 0 is 128 MB when it should be >=24 Gigabytes. I got above 4g decoding enable in BIOS. Does someone have suggestions how to debug this?
<bslsk05> ​en.wikichip.org: Vector Engine Type 10C - NEC - WikiChip
xenos1984 has joined #osdev
<ddevault> the debug build of edk2 is unironically better than the release build even for "production", I think
ZipCPU has quit [Ping timeout: 252 seconds]
ZipCPU has joined #osdev
ZipCPU has quit [Ping timeout: 272 seconds]
ZipCPU has joined #osdev
poisone has quit [Ping timeout: 268 seconds]
gog has joined #osdev
ZipCPU has quit [Ping timeout: 248 seconds]
ZipCPU has joined #osdev
<kaichiuchi> merry christmas eve losers
<gog> thanks
<Mutabah> Said at 9PM for me... it's the 25th for most Australians, and all of NX
<Mutabah> *NZ
gxt has quit [Remote host closed the connection]
gxt has joined #osdev
kof123 has quit [Quit: Leaving.]
<kaichiuchi> amazing
<kaichiuchi> since the lastpass breach, someone has tried to get into my github and my gmail
<zid> someone's been trying to log into my spotify for the past 10 years
<zid> I'm too lazy to actually log into spotify and change the password
<Mutabah> zid: Is that somebody you?
<zid> no, ludde gave me alpha access directly and I've not really used it since
Left_Turn has joined #osdev
bauen1 has quit [Ping timeout: 255 seconds]
Krypta has joined #osdev
poisone has joined #osdev
merry has joined #osdev
poisone has quit [Read error: Connection reset by peer]
poisone has joined #osdev
foudfou has quit [Remote host closed the connection]
foudfou has joined #osdev
[itchyjunk] has joined #osdev
Burgundy has quit [Ping timeout: 268 seconds]
foudfou_ has joined #osdev
foudfou has quit [Ping timeout: 255 seconds]
joe9 has joined #osdev
poisone has quit [Read error: Connection reset by peer]
invalidopcode has quit [Remote host closed the connection]
invalidopcode has joined #osdev
joe9 has quit [Quit: leaving]
[itchyjunk] is now known as [itchychristmas]
<zid> https://i.redd.it/w6252p3rpv7a1.jpg Found another map I need to link to heat
<mjg> let me link you a map: https://www.youtube.com/watch?v=AMeoGwMjuQI
<bslsk05> ​'Quake: e2m3 NR 0:27' by Chambers (00:00:35)
tiggster has quit [Remote host closed the connection]
k0valski18891 has quit [Ping timeout: 268 seconds]
<kaichiuchi> bacon is so good
<mats2> happy shwanza
friedy has joined #osdev
* merry christmas
<zid> heh
<zid> Happy santa's birthday eve
<kaichiuchi> compiling LLVM is a chore
<friedy> santaclaus.com says that his birthday is actually on March 15.
<zid> the pope says it's on the 25th of dec
<zid> and the archbishop of canterbury too
<friedy> That sounds a bit too secular for the pope to say.
<zid> santa's birthday has always been an ecumenical matter
<zid> it's jesus' birthday that northpole.com decrees
<friedy> Birthday paradox?
xenos1984 has quit [Ping timeout: 252 seconds]
xenos1984 has joined #osdev
CryptoDavid has quit [Quit: Connection closed for inactivity]
Patater has quit [Quit: Explodes into a thousand pieces]
Patater has joined #osdev
gdd has quit [Ping timeout: 265 seconds]
kof123 has joined #osdev
gdd has joined #osdev
heat has joined #osdev
freemint has quit [Ping timeout: 248 seconds]
alexander has quit [Quit: ZNC 1.8.2+deb2+b1 - https://znc.in]
alexander has joined #osdev
<heat> kaichiuchi, dong
<heat> llvm compile bestttttttttt
<heat> merry christmas you filthy animals
<kaichiuchi> why are you talking to me about dong
<heat> because dong
<kaichiuchi> fair
<heat> since i'm going to forget it anyway, merry christmas to all the orthodox people (see this message on 6th january)
<heat> I don't know any other holidays' dates but I tried
<heat> looks like we're in hanukkah right now so happy hanukkah too
<kof123> wish me a magical raven/crow digs up treasure day heat https://www.historymuseum.ca/cmc/exhibitions/aborig/fp/fpz2f35e.html
<bslsk05> ​www.historymuseum.ca: Civilization.ca - First Peoples of Canada - Our Origins, Wealth of Stories
<heat> kof123, happy raven/crow digs up a treasure day!
<heat> man they stole the crow thing from the japanese didn't they
<kof123> ty! you too
<heat> gog, nordic christmas when?
<zid> portugal eastern europe confirmed?
<heat> yes
<heat> this is one of many
<zid> portugese is the only other stress timed european language too, like russian
<zid> oh that subreddit is great
gareppa has joined #osdev
<zid> when richtugal
<heat> when great british tourist come spend money here
<zid> Okay I have £13, that should triple your GDP?
<heat> gbp no good here but i still take mr rich british tourist
<zid> I can exchange it for €4
<heat> wait no
<heat> when british come immigrateexpat?
<zid> When you start serving salmiakki on toast
<zid> instead of random sea creatures
<heat> never
<heat> random sea creatures 4 life
<zid> Literally googled portugal food
<zid> and got fucking whelks
<zid> 20% custard tart, 80% whelks
freemint has joined #osdev
<heat> >custard tart
<heat> you better not come here unless you want me to shank you
<zid> why what did I do
<heat> 'tis not a shitty custard tart
<zid> is it actually a fish tart
<heat> it's a pastel de nata
<heat> 'tis art
<zid> crayons of baby
<bslsk05> ​en.wikipedia.org: Pastel de nata - Wikipedia
<zid> Okay I typed crayon of baby into wikipedia, first sentence, custard tart
<heat> wtf's a crayon of baby
<zid> nata -> natal -> baby
<heat> huh?
<zid> pastel -> pastel -> colouring pencil -> crayon
<zid> natal1
<zid> adjective
<zid> adjective: natal
<zid> relating to the place or time of one's birth.
<heat> nata = cream
<zid> yes
<heat> pastel = pastry
<zid> natal = cream
<heat> no
<zid> creampie -> pastel de nata
<heat> natal = relating to the place or time of one's birth
<heat> OMFG
xenos1984 has quit [Ping timeout: 256 seconds]
<heat> natal also means christmas
<heat> go figure
<zid> birthmas
<zid> felix navidad, the birth of my cat
<heat> pastel would be "lápis pastel" in portuguese
<heat> for maximum confusion
<zid> yes, pastel is pastry, but blue pastry is 'any light colour', got it
<heat> no
<heat> lápis = pencil
<zid> no, lapis = blue
<heat> are you even taking notes zid
<heat> I said lápis, not lapis
<zid> I am trying, but the portageese keep making false friends
<heat> shut up
<heat> i read a red book and it was a great read
<zid> There's a classic joke about that
<zid> "What's black and white and re(a)d all over?" "A newspaper"
<zid> and on the theme of colours, "What's brown and sticky?" "A stick"
GeDaMo has quit [Quit: That's it, you people have stood in my way long enough! I'm going to clown college!]
<gog> heat: we have jólinn and annað jólinn
vdamewood has joined #osdev
<gog> jólin*
<zid> what does annath mean
k0valski18891 has joined #osdev
xenos1984 has joined #osdev
rorx has quit [Ping timeout: 268 seconds]
<kof123> irony, its like bronzey and silvery
<heat> 2hard2type
<heat> gog, merry jóadlajdand
* vdamewood gives gog a fishmas
<gog> annað means second
<gog> boxing day is second christmas
<zid> which kind of secon- oh that kind
<zid> biterary type
<vdamewood> "We've already had Christmas." "We've had one, but what about second Christmas?"
<zid> (although the other meaning if second still means the same thing, literally is the 1 less than third hand of a clock)
* gog chomp fishmas
<vdamewood> zid: FWIW, seconds are so called because they used to be called 'second minutes', or the second division of a degree or hour.
<zid> basically what I said yea
<zid> english has no words to measure time either they're all co-opted from distance
<zid> "a long time" "A short while"
<vdamewood> AH, I meant that do support the idea that it's likely that the other meaning applies in other languages as well.
<vdamewood> s/that do/that to/
<zid> other languages don't exist sorry
<zid> There's english, and people who can't speak english yet
<vdamewood> What about Klingon?
<vdamewood> Or rather tlingan Hol
<zid> I checked japanese, I'm a weeb not a nerd
<Ermine> gog: are you from Sweden?
<gog> no i'm american
<zid> seconds of time are just <a kanji> second(ary) is just 2order
<zid> 2ary world war
<zid> 2ary world big battle
<gog> L + ratio + you fell off + yalta conference is gonna fuck you over
<zid> Ermine: You can't just go around insulting people like that
<zid> gog: Get the drífa
<Ermine> zid: did I say something insulting?
<zid> The previous thing you said
<gog> i'm pan-nordic
<zid> I'm pro make denmark great again
<gog> eveerybody talks to me in icelandic
<gog> and i gotta be like ég tala ekki
<vdamewood> gog: Because it's fun!
<zid> "Let's just both speak english eh?" is the correct response to being talked at in swedish
<gog> i have imposter syndrome about it
<vdamewood> What about Sourish?
<vdamewood> All the taste languages: Sweedish, Sourish, Bittrish, Saltian, and Umamigo
<Ermine> Hm, sorry if anybody got offended by that question...
<FireFly> zid: allegedly people just switch to english anyway if there's a slight accent
<vdamewood> Ermine: (It was a joke.)
<zid> FireFly: yea fairly normal in the netherlands/germany/etc
<zid> if you try speak german they will just english you back, better than your german
<FireFly> I wish lol
<FireFly> usually theystick to german, usually younger folks know english tho :p
<heat> zid, 2ary earth big shooty shooty
<vdamewood> A Persian guy once told me I don't have an accent.
<zid> My main german friend speaks spanish english and russian as well >_<
<zid> My main portugeese friend is a goose
<heat> whew
<heat> thank god i'm not a goose
<vdamewood> I want to get a pet goose and name it untitled.
<zid> (heat is british)
<FireFly> I guess it's a bit unreasonable but I kinda mentally expect english as a meet-in-the-middle option..
<heat> zid, does that mean i'm a successful scottish?
<vdamewood> FireFly: Yeah, it's equally hard for everyone.
<zid> heat: no, british is english, unless you're scottish but did something amazing
<zid> scottish doing bad thing -> scottish, english doing bad thing -> british, scottish doing good thing -> british, english doing good thing -> english
<zid> those are the rules
<vdamewood> zid: So, you're saying the Scots aren't brittish, they're just brit-ish.
<FireFly> when I got to belgium-then-uk last summer it took a bit of time to mentally switch away from german as default language
<zid> getting to belgium is always confusing mentally
<vdamewood> FireFly; How dare you say such a vulgarity in the channel?
<zid> "Why does this country exist?"
<FireFly> zid: :v
<FireFly> like ordering at a restaurant or sth and defaulting to german
<vdamewood> Don't you know that Belgium is the rudest word in the Universe?
<zid> I am thankful to god for belgium
<zid> It gives somewhere for france and germany to bomb each other
<FireFly> "the battleground of europe"
<vdamewood> There's also Poland
<zid> poland exists to stop lithuanian taking over the world
<zid> s/an/a
<FireFly> :o
<vdamewood> ithuaian?
<vdamewood> lithuaian?
<zid> PLC stronk
<vdamewood> Actually, it would have been Polad
<zid> yes, polash and lithuanian commonwealth
<gog> meow
Burgundy has joined #osdev
gareppa has quit [Quit: Leaving]
<MelMalik> zid, the rules sound like a colonial playbook
<MelMalik> also belgium exists because feudalism. The same reason most small countries in Europe exist, and why Prussia was a thing until the '30s, and finally abolished de iure in the '40s.
<zid> you know none of that was serious right?
<zid> wasn't politic it was bant
<MelMalik> it could easily have been interpreted as a serious call for scottish independence
* gog bants zid
<zid> only if one were to have no sense of humor
<zid> and then struggled to find an alternate meaning
<MelMalik> which, by the way, yes. dissolving the acts of union, at least the schedules that aren't in desuetude due to the end of feudalism or other reasons, is an idea whose time has come
<zid> kay so you're literally here just to espouse political beliefs, that's easy enough to deal with
<MelMalik> i am not
<MelMalik> temptation is hard to resist, however
<MelMalik> i take it that's the sound of a fish being put in an empty barrel
<gog> it's a fish being put into my empty mouth
* gog chomp fishy
* MelMalik shakes her entire head
<zid> Disregard fishy, acquire mini sausage rolls
<zid> and hot sauce
<MelMalik> you were never fun to watch talk anyway
<gog> best i can do is fishy
<gog> also i stan scottish independence fwiw
<zid> your hotsauce is made of literal lava
<zid> tom scott isn't allowed any though
<gog> lol
<gog> poor tom
<MelMalik> that escalated quickly
rorx has joined #osdev
elastic_dog has quit [Ping timeout: 252 seconds]
elastic_dog has joined #osdev
<heat> zid would never say anything anti-union
<heat> he still wants to get knighted by le charles and get a cushy spot in the house of lords
<heat> Sir zid OBE sounds siiiiiiiiiiiiiiiiick
<zid> I can't afford to buy an OBE!
bauen1 has joined #osdev
<heat> being born poor doesn't mean you can't get an OBE
<heat> just get rich and win 7 F1 world championships
<heat> they'll forget you were poor after the 4th and they'll consider it after the 6th
<zid> (There was a scandal where it was discovered, that shock horror, the conservative party was giving decorations to heavy donors)
<gog> wow
<heat> swap C++ with python
<heat> add rust and then C as the last levels
<zid> yea swap C++ and python
nanovad has quit [Quit: ZNC 1.7.5+deb4 - https://znc.in]
nanovad has joined #osdev
freemint has quit [Ping timeout: 246 seconds]
<FireFly> gog: lol
<MelMalik> hold your ass, ass holders
<theWeaver> ok why the fuck isn't Perl on this list
<theWeaver> also HTML isn't a programming language :|
<zid> It doesn't actually say that it is
<theWeaver> no but it kinda implies it
<theWeaver> the presence of HTML on a 'level of programmers' chart implies it has relevance
<theWeaver> relevance it has not
<klange> Hence those are just regular socks and not any degree of programmer socks.
<kazinsal> HTML5+CSS3 is turing complete
<gog> but can it run crysis
<theWeaver> klange: then be straight up and just write 'non-programmer' right there
<moon-child> start with doom and see where you get
<heat> if you consider <script> as html, then yes it can run crysis
<theWeaver> heat that doesn't count that tag includes another language, we're obviously talkin pure HTML here
<heat> then your C/C++ doesn't count as C/C++ since it involves the C preprocessor
<theWeaver> that's not the same heat and you know it
<gog> meow
* moon-child pets gog
* theWeaver weaves moon-child a tapestry
<moon-child> I don't want no avian flu in my house
<moon-child> bitch
<theWeaver> :(
<theWeaver> im not an avian tho
<moon-child> what
<moon-child> why are you weaving me a tapestry then
<theWeaver> what, non-avians can't weave tapestries anymore?? this woke bullshit gone too far
Matt|home has quit [Quit: Leaving]
freemint has joined #osdev
sweetleaf has quit [Quit: WeeChat 3.7.1]
<klange> My HTML has a whole REPL: https://klange.dev/
<bslsk05> ​klange.dev: klange.dev
<theWeaver> is thi sjust python