<Mutabah>
There's definitely hardware still being made/shipped with those architectures...
<Mutabah>
but, do you as a general os/kernel developer need to care? Not really.
<qxz2>
do you think x86_64 has a promising future?
<heat>
yes
<Mutabah>
It has massive inertia, it'll keep going
<heat>
anyone that thinks any alternative is any close to taking over is really on the apple koolaid
<qxz2>
kind of upset that apple switched to arm, probably because i'm biased in favor of x86_64
<qxz2>
like x86 assembly
<qxz2>
and hence am a fan of x86_64, its successor
<Mutabah>
As much as I have a soft spot for intel assembly, it's nice seeing ARM have some use in the desktop space.
<qxz2>
why is it nice?
<qxz2>
(i don't know much about it)
[itchyjunk] has quit [Ping timeout: 250 seconds]
<heat>
because why not
<qxz2>
change is good? hah i thought there might be more technical reasons
<heat>
well, arm64 is less disgusting legacy-wise
<klange>
Architectural competition is good for the same reason there being multiple x86 vendors is good, for the same reason having multiple compiler implementations in regular use is good.
<heat>
^^
eddof13 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
[itchyjunk] has joined #osdev
<qxz2>
so it's a competitive market, as opposed to a stagnant one.
<Mutabah>
Yep. Monocultures lead to stagnation.
<qxz2>
anybody do embedded systems development professionally?
<Mutabah>
And the longer there's a lack of variety, the harder it is for a new player to enter (as they have more inertia to overcome)
<Mutabah>
qxz2: I did for a while, albeit in an ancillary role (I'm primarily a higher-level software engineer, but I did some firmware work for a while)
<qxz2>
higher-level as in what?
<qxz2>
language used?
<Mutabah>
Professiionally I use C++, I tend to work on "business logic" (which is image analysis and 3D maths for us)
<qxz2>
very cool
<qxz2>
what kind of math? linear alg and multivar calc?
zaquest has quit [Remote host closed the connection]
<Mutabah>
Getting offtopic: But I work for a company that makes equipment to measure rail infrastrucutre. The software takes sensor inputs (mostly images) and transforms them into measurements of components.
<Mutabah>
There is a selfish side - Apple are making desktop ARM a thing
<Mutabah>
thus making it easier for hobbists to develop for
<qxz2>
nevermind! i found a description
<klange>
Hopefully one I wrote and not some rando's take on it.
<qxz2>
yes, one you wrote
<heat>
just a sec let me write a bad review for toaru
<klange>
"needs more anime waifus" is not a valid criticism
<qxz2>
you've done some pretty cool work
zaquest has joined #osdev
<sakasama>
klange: Are you claiming you supply sufficient anime waifus?
<kazinsal>
package manager has insufficient waifu packages in the main distribution, OS unusable
<klange>
Yes, I find zero is sufficient for an OS.
<heat>
this is exactly why you need a web browser
<heat>
infinte waifus
<klange>
Even for one named after an anime franchise. Perhaps especially, as obviously the only appropriate waifus would be ones from that series, and that runs afoul of many things.
<klange>
heat: working on it, slowly, eventually
<moon-child>
huh? Aren't you the anime waifu of toaruos?
<klange>
Unfortunately, my background was in compositors, not web browsers.
<sakasama>
You may be in a position to provide a bundled AI-powered waifu generator.
<heat>
pull a serenityOS and do a web browser full time
<klange>
That's what I'm referring to when I say my background is not in web browsers.
<klange>
Kling's background was in web browsers. The whole of Serenity was a backdoor project to kick off a web browser.
<heat>
ah, i had no idea
<heat>
makes sense
<heat>
they really should scrap the OS and just do it on linux or something
<klange>
I do intend to write a browser, I have written prototypes in the past. I even have a character name reserved for it already.
<kazinsal>
considering serenityOS was designed to be user hostile for non-grognards I would hate to see how unusable a serenity browser is for anyone who doesn't have a degree in applied unix greybearding
<heat>
htmld | cssd | jsd > /dev/fb0
[itchyjunk] has quit [Remote host closed the connection]
<klange>
Originally my plan was to write a browser engine in Python, knowing full well it would be slow as shit, but it would be fun. This was several years ago. The prototype exists in the form of the old Toaru 1.2.x "Help Browser" program that can be made to load from URLs.
<klange>
At one point I thought maybe continuing that but with Kuroko would be a good idea.
<klange>
I'm in a tough spot as obviously my main goal here is to have a browser for my OS, but that has implied requirements around language and use of third-party stuff, and I'm not going to attract any contributors with "let's write a borwser engine in C with no external deps!"
<heat>
i mean
<klange>
Much less for "let's write a browser engine in a language you've never heard of that is just as slow as CPython but with none of the standard library!"
<heat>
they did that with C++
<klange>
"Modern C++" is a bit of an easier sell.
<moon-child>
you could make kuroko faster; lots of literature on the topic
<moon-child>
more importantly, if the browser itself and the js can share an object model and runtime, a lot of nice stuff pops out
<moon-child>
implementation wise
<klange>
The main way to make Kuroko faster would be writing a JIT, which I kind of don't want to do - I like that Kuroko is plain stupid C that can run on anything without me doing more work on it.
<klange>
And all of the work towards writing a codegen for an in-house JIT would be equally applicable to writing a compiler backend for something targeting native machine code.
<moon-child>
weren't you planning to do the latter anyway?
<klange>
There's a gradient here, and "native-compiled language" is farther towards the "vague idea" side than "browser". "Browser" is much more in the realm of real planning.
<klange>
Really, if I could get off my ass and write a box layout engine I would be farther ahead than I was with the previous Python prototype, and I am in dire need of one of those anyway for general text layout.
<moon-child>
hmmm how does the box layout thingy actually work? I did a hacky thing in my old ui lib, but not sure if there's a 'proper' solution
<geist>
make sure your memcpy doesn't introduce any hard edges to the audio
<heat>
use avx512 stringops and watch memcpy hard edge all over your audio
slidercrank has joined #osdev
warlock has quit [Ping timeout: 268 seconds]
<sham1>
> sizeof(BYTE)
<sham1>
It's just 1
<heat>
and new[] operates with element counts, not bytes
<heat>
so new BYTE[nBytes] is the correct form
<sakasama>
"I have found the best sound is an infinite goto loop with it throwing an exception after it reads beyond the end of the buffer, I set exceptions off so it doesn't crash the program."
linearcannon_ has quit [Ping timeout: 250 seconds]
<mrvn>
geist: do you also buy $400 digital audio cable because they sound better?
<sakasama>
I am slightly curious about what msvc does for codegen when given an otherwise infinite loop throwing exceptions but exceptions are disabled.
<mrvn>
Normaly I would say fails to build but we are talking msvc here. They also catch, ignore and somehow continue on nullpointer exceptions in java unless it's a debug build.
<heat>
terminate
<heat>
it's the only compliant behavior
<heat>
std::terminate()
<mrvn>
"I'll be back"
<sakasama>
Well, clearly in this case its producing superior audio.
<mrvn>
std::terminate() produces a sharp clack in the audio.
<mrvn>
(hence the need to disable exceptions)
<sakasama>
(Hence the question about what that even does.)
<heat>
i assume he's either never triggering the exception or he's catching it
<sakasama>
"I set exceptions off so it doesn't crash the program" implies that neither is the case.
<sakasama>
... unless maybe he botched something in the catch statement and that's what was crashing it.
* sakasama
doesn't have enough narcotics to contemplate this further.
linearcannon has joined #osdev
linear_cannon has quit [Ping timeout: 255 seconds]
linearcannon_ has joined #osdev
linearcannon has quit [Ping timeout: 250 seconds]
<mrvn>
heat: he's just totally trolling
<sakasama>
mrvn: Never attribute to malice that which is adequately explained by stupidity.
warlock has joined #osdev
leon has quit [Quit: see you later, alligator]
leon has joined #osdev
leon has quit [Quit: see you later, alligator]
leon has joined #osdev
GeDaMo has joined #osdev
gog has joined #osdev
gog has quit [Read error: Connection reset by peer]
gog has joined #osdev
skipwich_ has joined #osdev
skipwich has quit [Ping timeout: 248 seconds]
nyah has joined #osdev
kivikakk has quit [Remote host closed the connection]
kivikakk has joined #osdev
<mrvn>
sakasama: it sounds better when you use "new" instead of "malloc"? You think that's serious?
Jari-- has quit [Ping timeout: 255 seconds]
<sakasama>
mrvn: It's too many posts of mostly nonsense for me to take it seriously; either way, it's a special brand of stupidity.
ptrc has quit [Remote host closed the connection]
ptrc has joined #osdev
<FireFly>
it's probably honest but by someone who doesn't really know anything by programming and with some lack of critical thinking (but yeah, same reasoning that leads to $400 gold-plated HDMI cables or whatever
<gog>
they make sure all the bits get to the monitor
<GeDaMo>
Not just ordinary bits, gold-plated bits :P
<kof123>
i remember decades ago on winamp forums, someone saying they swore some plugin version sounded better, and to revert. the author IIRC said he was a professional, and programmed soundforge IIRC. and was telling them "its the same damn bits! something changed in your setup!"
<FireFly>
every bit is sacred
<zid>
gog: I use special cables that randomize the phase of my bits
<zid>
I wouldn't want them to all be polarized in the same way, and wear a groove into my cable
<moon-child>
lmao
<gog>
yes
<gog>
increase the longevity of your $400 investment
SpikeHeron is now known as dutch
<netbsduser>
writing a web browser strikes me as a promethean punishment
<netbsduser>
drag your rock all the way up the hill to standards conformance then it rolls back down again as yet another new thing is added
<zid>
"The number of W3C specifications grows at an average rate of 200 new specs per year, or about 4 million words, or about one POSIX every 4 to 6 months."
<Ermine>
Drew's obligatory post
<netbsduser>
the web was a fantastic invention and i fundamentally like the concept of it, it's a lot like sun's news
<Ermine>
gog: may I pet you
<zid>
web browsers develop at the exact speed that chrome can write whitepapers about shit they already wrote
<netbsduser>
but the web as it is today is basically impossible for a single person to implement (even msft gave up)
<zid>
so you need a bigger team than chrome's, good luck
<GeDaMo>
Web standards have been distorted to benefit commercial interests
<zid>
GeDaMo: web standards are literally just "write down what chrome did"
<gog>
Ermine: yes
<zid>
oh, squardle time
* Ermine
pets gog
<netbsduser>
it doesn't have to be so. you could have something which is a lot like the web (i.e. not some regression to gopher like some advocate) but without requiring 25 manyears to read all the specs (let alone implement them)
<GeDaMo>
The special appears to be the British spelling one
<GeDaMo>
At least, that's the one I'm doing :P
<zid>
bad vowels
<zid>
is yours bad vowels
<zid>
23 words
<GeDaMo>
Yeah, that's today's one
<zid>
done done
danilogondolfo has joined #osdev
<kof123>
quoth the link "But WebVR is cool, right? Right?"
* kof123
points at VRML corpse
<zid>
I think express took me about as long
<GeDaMo>
VRML was cool ... for a brief period in the 90s :P
<GeDaMo>
I was at uni at the time and they has some SGI machines
<kof123>
i dont know the details on either...just makes one wonder how much is nih
<corecode>
heh is it possible that this embedded sdk/examples never use their initial stack after starting the RTOS? i think so... 3000 bytes (out of 8192) just unusable
craigo has joined #osdev
<corecode>
ah no i have 32KB RAM, still
craigo has quit [Remote host closed the connection]
zxrom_ has joined #osdev
zxrom has quit [Ping timeout: 250 seconds]
Matt|home has joined #osdev
bradd has quit [Ping timeout: 246 seconds]
Left_Turn has joined #osdev
zxrom_ is now known as zxrom
lovenot has joined #osdev
<lovenot>
Hello
<GeDaMo>
Hi lovenot :)
<lovenot>
Hi
<lovenot>
Is the bot invasion over yet?
<GeDaMo>
I didn't notice one :|
<lovenot>
Oh, alright.
<lovenot>
I remember there was one and someone left the quote "No matter how good you build your systems, someone will build an even stronger idiot." or something.
<GeDaMo>
"Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning."
<lovenot>
Yeah, I think that quote.
[itchyjunk] has joined #osdev
<mjg>
that's giving may too much redit to programmers
<gog>
i'm mostly trying to me-proof my programs
<gog>
and i'm something more than an idiot
<gog>
i'm a fuckup on a cosmic scale
<zid>
The problem is just that it isn't zero-sum
<zid>
You get LTO or fancy error messages, pick
<Ermine>
gog: compared to me you're genius
* Ermine
wonders which tex distribution sets pdf title to dvi absolute file name meanwhile
kivikakk has quit [Ping timeout: 250 seconds]
AmyMalik has quit [Remote host closed the connection]
Ellenor has joined #osdev
kkd has quit [Ping timeout: 250 seconds]
ggherdov has quit [Ping timeout: 250 seconds]
kkd has joined #osdev
ggherdov has joined #osdev
kivikakk has joined #osdev
kivikakk has quit [Ping timeout: 250 seconds]
kivikakk has joined #osdev
innnegatives has joined #osdev
slidercrank has quit [Ping timeout: 252 seconds]
Left_Turn has quit [Ping timeout: 264 seconds]
Left_Turn has joined #osdev
<corecode>
who would not use pdftex directly
<zid>
is this a quiz, sane people?
<zid>
did I get it right?
<lovenot>
[ yes ]
Ellenor is now known as AmyMalik
innnegatives has quit [Quit: Client closed]
<mrvn>
Does uboot have a feature that can check a GPIO pin on a SoC and then use one of two kernels depening on if the pin is high or low?
<marshmallow>
could we expect the linux kernel to enable DVFS / adjust the cpu frequency when the battery saver mode is turned on on an android device?
innnegatives has joined #osdev
theboringkid has joined #osdev
<mrvn>
isn't that what android does?
theboringkid has quit [Quit: Bye]
minout has joined #osdev
minout is now known as stop
stop is now known as stopPING
linearcannon has joined #osdev
linearcannon_ has quit [Ping timeout: 250 seconds]
slidercrank has joined #osdev
slidercrank has quit [Read error: Connection reset by peer]
<geist>
johngammerson: wait are you the one asking about multiboot on mac the other day?
johngammerson is now known as ilovethinking
<ilovethinking>
yes
<zid>
okay so you have .boot and .text in program header [1], at 0x1b offset in the file, loads to 0x100000, seems good
<geist>
ah yes. please try to use the same nick if you can. helps us track who is who
<ilovethinking>
yes im sorry
<zid>
oh now I have to unignore one sec
<geist>
no worries
<ilovethinking>
wtf zid
<zid>
I've never seen align 0x10 before
<zid>
but qemu only wants align 4 so whatever
Gooberpatrol66 has quit [Ping timeout: 250 seconds]
<zid>
I'd go with a hex editor at this point cus it all... seems fine to me
<gog>
lmao
<zid>
I like a hex editor
<zid>
fuck, I need to install a hex editor.
<geist>
or at least a hex dump
<geist>
like `hexdump -Cv`
<mrvn>
zid: multiboot header must be in the first 8k
<zid>
yea hexdump -C is legit
<ilovethinking>
i should compile boot.asm with elf64 right?
<geist>
in the first 8k is why i always do that trick of jmping around it and putting it in the .text.boot section
<ilovethinking>
or wait
<ilovethinking>
no
<geist>
and then make sure that links at the front of the binary
<geist>
ilovethinking: i thought you weren't doing 64bit yet?
<mrvn>
zid: your linker script only works by accident.
<ilovethinking>
wdym? im gonna jump to long mode after
<ilovethinking>
but for now im reptty sure i should do elf32?
<geist>
oh. yeah no yu need to link boot.asm as elf64 if you want to link it with the rest of it
<geist>
since you can't really mix elf32 and elf64 in the linker
<zid>
k I has hex workshop, love that guy
<mrvn>
zid: but don't worry, 99% or people do it like that.
<ilovethinking>
maybe smth is wrong w my procedure? i link with ld.lld -n -o kernel.bin -z max-page-size=0x1000 -T src/linker.ld src/boot.o
xenos1984 has joined #osdev
<geist>
the lld part may be more difficult, but aside from that
<geist>
is there a reason you are using lld vs binutils ld?
<mrvn>
ilovethinking: 1. ld normaly outputs elf, not bin. 2) your kernel only consists of boot.S?
<ilovethinking>
yes
<ilovethinking>
for now
<geist>
okay
<mrvn>
3) link with $(CC)
<mrvn>
4) follow the barebones example in the wiki
<geist>
which compiler are you using? clang or gcc?
<geist>
#3 is not required, i wouldn't mess with that yet
<ilovethinking>
the barebones is for a 32 bit kernel tho
<geist>
yeah
<geist>
and i kinda thought your point was to steer away from the tutorials
<ilovethinking>
yes
<ilovethinking>
but fuck man it's hard to get the start done
<geist>
anyway. re lld vs binutils. what toolchains are you using?
<ilovethinking>
:cry:
<gog>
clang clang clang went the compiler
<gog>
ding ding ding went the linker
<ilovethinking>
geist: x86_64
dutch has quit [Quit: WeeChat 3.8]
<geist>
ilovethinking: yes. what toolchain? clang? gcc?
<ilovethinking>
clang
<geist>
okay, thats why you're using ld.lld then?
<ilovethinking>
but for now none cuz no c files
<ilovethinking>
yes
<geist>
what assembler are you using then? (gcc and clang are perfectly good assembler front ends)
<gog>
you can assemble .S files with clang
<ilovethinking>
nasm
<geist>
oh hrm. suggestion, move to using clang and/or gcc for that
<gog>
you can assemble .S files in intel syntax with clang
<geist>
but nasm should work i guess. but part of the probelm is you're starting to use more and more generally nonstandard tooling for a lot of us
<geist>
since most folks here dont use clang, AFAICT (me included)
ilovethinking_ has joined #osdev
<geist>
and dont use lld (though some do)
<ilovethinking_>
lld is fine
<geist>
well.... you say that.
<gog>
are you looking at its output
<gog>
i have a feeling it's not sane
<geist>
when you have trouble it'll be a little harder for folks to help, because what they suggest may not be exactly applicatable to lld (vs binutils or gold)
<geist>
exactly
<gog>
but i'd need to readelf it and maybe (probably) objdump it
<geist>
not saying you can't make clang/lld/nasm/etc all work, it's just more variables outside of our control
<geist>
which clang toolchain are you using? the built in mac one?
<geist>
does that generate and link ELF files?
<gog>
UwU
<ilovethinking_>
no i generate a an elf file with lld
<gog>
the elf file is probably wrong
<gog>
in some way
<gog>
do you have an entry point
ilovethinking has quit [Ping timeout: 246 seconds]
<bslsk05>
github.com: lk/start.S at master · littlekernel/lk · GitHub
dutch has joined #osdev
<geist>
the flag is MULTIBOOT_AOUT_KLUDGE (which is bit 16)
<ilovethinking>
what other flag doni set then
<ilovethinking>
do i*
<geist>
bit 16
<geist>
we had a whole discussion about it. you set it so you can provide more data as to how to load it
<geist>
either you do that and you provide the data to the loader, or you dont set the flag and then it loads it whereever it does
<geist>
you are currently setting it, but not providing the data
<geist>
alas i really need to get going and do some work
<geist>
good luck! gettig close. it's annoying, but this is also really annoying. welcomg to early osdev nonsense hell
_xor has joined #osdev
linearcannon_ has joined #osdev
<geist>
you're dealing with the result of a 40 year old computer architecture with endless backwards compatibility. if commodore 64s had survived to this day and were the dominant thing you'd just have to put in some other silly nonsense to bootstrap from 6502 to some 64bit mode by constructing an audio tape digital image or some other shit
<ilovethinking>
thanks geist
<ilovethinking>
can i just set the flags to 0?
<ilovethinking>
so that at least i can get the kernel to boot
<zid>
ooh that's a good idea
<zid>
bootstrap my PC over a cassette
<geist>
zid: if you had a old IBM PC 5150 you could load stuff over the cassette port sure. i dot think any emulator bothers emulating that functionalty since zero people used it
linearcannon has quit [Ping timeout: 250 seconds]
<mrvn>
ilovethinking: your checksum is also wrong I think: 0x1badb002 + 0x001000 + 0xe45228ee == 0xffffe8f0
<mrvn>
0x1badb002 + 0x00010000 + 0xe45228ee = 0x0000d8f0 I mean
<mrvn>
geist: now there is an interesting idea. a 64bit 6502 variant CPU :)
<geist>
mrvn: right? imagine if that somehow became the dominant thing
<geist>
or of 68k had. though motorola wasn't able to succeed in their later designs, so i suspect what would happen is more folks would be using PPC
<geist>
zid: iirc there was some sort of diagnostic mode on the original IBM PCs where you could load code over the keyboard port. folks figured this out later
<geist>
basically factory diags, a way to get code onto the motherboard
<zid>
geist: How long do you think a bios will wait for a floppy sector before giving up? :P
<zid>
tape is kind fast though
<mrvn>
zid: That's actually in the specs. Reading an non existing IO port is how you wait a fixed time on x86.
<geist>
yah and a floppy i think you can kinda detect fairly quickly that it's not responding
<mrvn>
geist: nope. there is no way to see if a floppy is connect unless it responds.
<geist>
right, but i think on Pc you can at least see data moving under the head
<mrvn>
I think the idea was to use a tape on the floppy controller. While rewinding the tape to the right sector you will run into the IO port timeout.
Gooberpatrol66 has joined #osdev
Left_Turn has quit [Ping timeout: 268 seconds]
<mrvn>
.oO(How good will a WiFi card work without the antenna?)
Gooberpatrol66 has quit [Remote host closed the connection]
Gooberpatrol66 has joined #osdev
<gog>
not good
<mrvn>
gog: 30cm from my phone to the SoC?
<gog>
hmm
<gog>
idk
<mrvn>
Maybe I will just put it off for tonight and wait for the antennas to arrive tomorrow.
<gog>
if it has a backup little fractal antenna it might work fine
<gog>
but idk what kind of card
<mrvn>
M2 E-key module
<sakasama>
It might work fine at that distance anyways as long as the lead is long enough.
<sakasama>
If it's in the 5GHz band or thereabouts odds are good.
<mrvn>
the connector is right next to the shielded enclosure for the chip. not much lead there.
<zid>
Anyway, I bet I could play a recording of a floppy disk into the head of a floppy controller
<zid>
might need to underclock the floppy drive a lot though
<mrvn>
zid: like those CD players for cars that only have tape decks that have a fake tape with a magnet that triggers the tapes reader?
<zid>
(I'm back, with a weird sort of burrito thing I made)
ilovethinking_ has quit [Ping timeout: 260 seconds]
<heat>
hello it me onyx operating system developer
* mrvn
has some Chicken Korma in the microwave
Left_Turn has joined #osdev
<heat>
geist, is there a need to write-barrier on riscv when doing page table modifications?
<heat>
or better yet, on what archs do you need to do that?
<heat>
I would assume arm needs it ofc
<mrvn>
heat: wouldn't you have to do that on all archs that have caches that aren't snooped by the TLB?
Left_Turn has quit [Ping timeout: 246 seconds]
<danlarkin>
heat: yes you need to fence after modifying page tables
<nortti>
or wait, no, that was after en garde, before allez
Left_Turn has joined #osdev
slidercrank has joined #osdev
Left_Turn has quit [Ping timeout: 260 seconds]
Left_Turn has joined #osdev
air has joined #osdev
brunothedev has joined #osdev
theboringkid has quit [Ping timeout: 250 seconds]
gdd has joined #osdev
GeDaMo has quit [Quit: That's it, you people have stood in my way long enough! I'm going to clown college!]
<zid>
oh thanks american DST being on a silly day, honzuki an hour early
<sham1>
Ugh, thanks for reminding me that the Euro DST is in over a week from now. Now I'm annoyed
Left_Turn has quit [Quit: Leaving]
<brunothedev>
i am so angry at kde and wlroots that i want to write my own compositor from the ground up on the tty
<brunothedev>
pwd
<geist>
heat: i dont think so, but there's some talk about it
<geist>
i forget where. newer versions of the priviledged spec, etc
<brunothedev>
<geist>
re arches that do. ARM
<geist>
that's all i know about
<geist>
it's because the TLB is cache coherent on ARM, it's just an 'external observer' from a weakly ordeed memory model
<geist>
so it's the same rules as 'do you want another cpu to see this write *now* and in order'
<geist>
think of the TLB as just being another cpu
<gog>
daylight? what's that?
<sham1>
That thing that occurs outside
<gog>
oh
<gog>
never been
<sham1>
At day
<gog>
also what's a good cheap vps
<sham1>
This OSDev channel is sponsored by ExpressVPN
* sham1
runs
* brunothedev
throw rocks at sham1
<gog>
VP _SSSS_
* CompanionCube
wonders what brunothedev is angry about
<CompanionCube>
inb4 'use x11 instead'
<brunothedev>
CompanionCube: i dont have a bif problem with the x11 protocol, but XOrg SUCKS
<gog>
idk i have this TNAhosting offer for $15/yearly, it's not a lot and i don't need much
<CompanionCube>
isn't xorg sucking a direct result of the former, though?
<gog>
i'm about to pull the trigger but if there's anything better i'm open to it
<mrvn>
geist: so the TLB is snooping the caches but not e.g. the write back buffer in the cpu?
<brunothedev>
CompanionCube: gonna do what, write a x11 server?
<gog>
this is about the cheapest i've seen
<CompanionCube>
lol
<brunothedev>
wayland looks cool
<sham1>
gog: Oh, seems like I misread you. VUltr?
* CompanionCube
hasn't yet gone wayland, awesomewm doesn't do it and there's no direct replacement.
<lav>
vultr's cheapest is $5/month
<brunothedev>
CompanionCube: the irony is that i used awesomewm with gentoo
<gog>
it's a little more for about 4x the price
<sham1>
I nowadays use Xfce and it doesn't have a wayland compositor. Although it might in the future, exciting stuff
<gog>
the worst that happens is it's not enough and i spent $15
<gog>
that's like 3 things at the grocery store
<lav>
what's your use case? :)
<gog>
computing is cheaper than food now
<sham1>
Apparently the 4.20 (i.e. the blaze-it patch) might bring a WL compositor. Which would once again mean a broken firefox
<CompanionCube>
(i have looked for replacements, and it's saying something that the most likely one is KDE Neon)
<CompanionCube>
s/neon//
<brunothedev>
3 things? Lol in brazil that is like 3 good meals
<gog>
everything is ridiculously expensive in iceland
<CompanionCube>
(though Neon would be a good method of trying the whole thing with minimal effort)
<brunothedev>
gog: Know your awful food, that is a thanks
<brunothedev>
norway && faroe > iceland
<gog>
¯\_(ツ)_/¯
<gog>
i'm not icelandic
<brunothedev>
gog: immigrant?
<gog>
yes
<gog>
i'm american
<gog>
worse than an icelander
<brunothedev>
the urban and suburban part of the us sucks, but the rural regions looks cool
<gog>
i'm from the rural midwest
<zid>
gog: zero to hero more like
<gog>
i don't have good feelings about it
<gog>
great now the hercules song is gonna be stuck in my head
<brunothedev>
why dont u like rural midwest?
<heat>
texas >>>>>>>>>>>>>>>>>>>>>>>>> other states
Amorphia is now known as Amor-Faye
theboringkid has joined #osdev
<gog>
i'm happier here
<sakasama>
=
<heat>
<CompanionCube> isn't xorg sucking a direct result of the former, though? <-- yes and no?
<heat>
the X11 protocol sucks AND XOrg is a large project with a LOT of history running on very heterogeneous systems
Amor-Faye is now known as ah-mor-FEE-a
<sham1>
X11 protocol is fine for what it was meant for, which was basically to transfer simple graphics over the wire to dumb graphical terminals, akin to using something like telnet to bring your shell to you
<heat>
gog, what state are you from and do you have a kickass accent
ah-mor-FEE-a is now known as Morphy
<bnchs>
hi
<sakasama>
brunothedev: Red states really suck for anyone who's not neuro/gender/hetero-normal... oh, and male and mostly white.
<mrvn>
sham1: simple graphics like an elipse arc with dashed lines and beveled corners?
<sham1>
From what I can tell they suck for the last groups as well
<sham1>
mrvn: yes. It's the client's problem to display them
<sham1>
They're also described in very little data
<gog>
heat: i'm from wisconsin i have a boring accent
<mrvn>
and have maybe been used once outside the X11 perf test.
<sakasama>
sham1: Yes, but they don't have to purchase the *really* part.
<heat>
gog, aw, sucks
<mrvn>
sham1: they are pretty hard to render
<sakasama>
bnchs: Hello. My brain is mush.
<sham1>
Oh for sure
<bnchs>
sakasama: my brain is more mushier than you
<bnchs>
it is practically dumber than anyone here
<sham1>
It's not like X doesn't have problems. I mean, the way the base protocol does fonts? Dreadful
<mrvn>
bnchs: if you say so
* gog
patpatpat bnchs
<mrvn>
sham1: you don't have a local fint server on your client?
<gog>
ok i did it i bought hosting
* Ermine
's eyes bleed because of x core fonts
<sham1>
mrvn: no, not really
<brunothedev>
what is the best for git: ssh or gnupg
<mrvn>
the font protocol was fine when you had like 20 font variants. Not 1000.
<heat>
what
* bnchs
pats gog
<heat>
... both?
<mrvn>
sham1: most terminals had at least some core font.
<sham1>
Ermine: oi, you don't get to badmouth the fonts themselves though. They're nice bitmap fonts
<sakasama>
bnchs: Practically? That's debatable. I only leave my apartment when coerced by horrible events. My fridge only contains condiments and vitamins.
<sakasama>
I'd immigrate to Iceland too but I'm pretty sure they'd reject me.
<brunothedev>
god, i hate gentoo approach to de's, they are SOO minimal, but sorry, i dont know why da hell does "kde-amongus" crashed and why does it makes kwin crash too, in a wm, you know everything about your system, not the same with KDE/Gnome/Xfce/Mate
<sham1>
I actually went though a phase where I used some of the X core fonts on my terminal emulators back when I did the whole "minimalism for every aspect of computing"
<brunothedev>
sham1: did you watch luke smith and want to live in the woods too?
<sakasama>
bnchs: Oh, and I'm American but I sound like I'm English.
theboringkid has quit [Quit: Bye]
<sham1>
brunothedev: I did watch Luke, but I didn't want to live in the woods
slidercrank has quit [Remote host closed the connection]
<heat>
oi govna bruv lets watch tha footie lads
<brunothedev>
sakasama: oi chap do u got a loicense to develoop
slidercrank has joined #osdev
<heat>
oi dem tories innit
theboringkid has joined #osdev
* sakasama
weeps.
theboringkid has quit [Client Quit]
<heat>
<insert generic snarky sarcastic remark about UK politics>
<sham1>
<insert snark about Brexit by a mainland European>
* sakasama
contemplates living in the woods.
<brunothedev>
<insert joke about the falklands as a South American>
<gog>
amogus
<heat>
agogus
<gog>
SUS
<brunothedev>
sussy wussy :S
<Ermine>
sham1: my eyes *objectively* bleed. No badmouthing here
* lav
vents
<sham1>
Well in that case I'd see a doctor
<sakasama>
Yep, dem woods be lookin pretty good bout now.
<brunothedev>
the woods? DA WOODS? You are not a true minimalist until you live in the mountainous bahia/minas arid nature, no trees, only D I R T
<brunothedev>
freebsd devs after using their own ose instead of macos: :O
<heat>
give me the boomer filesystems all day
<brunothedev>
btrfs go brrr
theboringkid has joined #osdev
theboringkid has quit [Client Quit]
<brunothedev>
fun fact: the maintainer of the freebsd os, literally SOYJACKED of the og macs so much that he worked from then own for apple
theboringkid has joined #osdev
<heat>
mjg, we found THE maintainer of the freebsd
<brunothedev>
mjg be like: ONG NEW APPOU MEECBOOK MUS BYE
<sham1>
Sadly solaris died and Oracle looted its corpse
<gog>
i want alpha and hp-ux
<brunothedev>
oracle trying not ruin any software %any: S 00.2
<heat>
HP-UX ITANIUM
<gog>
that's right i was going to but an itanium server
<gog>
as my first vintage computing purchase
<heat>
im starting to understand why you were +q'd
<heat>
gog, pls do
<heat>
lets write an OS for it
<brunothedev>
heat: why?
<gog>
ok
* brunothedev
runs crying
<heat>
sophia is directly portable to itanium through EFI
<heat>
we're already on the right path
<gog>
yessssss
<brunothedev>
wtf is sophia
<sham1>
Oracle does have some slight redeeming qualities, but hot damn, they're Nestlé levels of evil at times
<gog>
sophia is my project
<brunothedev>
it is sad that ubuntu is the that it is, videos of ubuntu introduced me to linux. I never runned ubuntu tho
<gog>
what's wrong with ubuntu?
<gog>
linux is linux
<gog>
all distributions suffer equally because they're linux
<brunothedev>
gog: snaps, abandoning old (cool) looks
<sham1>
Not all of them have all the snappage
<gog>
you can use the old cool looks
<brunothedev>
gog: unity?
<gog>
you can get rid of it
<gog>
if you were a real linux OG you'd know that
<gog>
linux is linux
<gog>
also i don'
<gog>
t think unity was v cool
<brunothedev>
gog: not really an og, when i said videos, i meant specifically an old ubuntu install video by diolinux(look him up)
<gog>
i only watch one linux youtuber sorry
<brunothedev>
oh, and also a video by fabio akita
<brunothedev>
gog: what is the only one and this is a lusophone channel
<gog>
veronica explains
<brunothedev>
the only one i never watch
dude12312414 has joined #osdev
<brunothedev>
i mostly watch brodie robertson, really cool channel
<brunothedev>
he aways has a video after i go home after school
<heat>
would rather rot than consume linux youtube videos
<gog>
heat heat heat
<heat>
gog
<brunothedev>
heat: dt: Danmit why no ones make a distro with only appimages and fish shell?
<gog>
because that's a really inefficient distro honestly
<CompanionCube>
my first linux was
<CompanionCube>
an ubuntu 9.04 live cd
<gog>
nice
<brunothedev>
linux mint xfce
<gog>
my first linux was red hat 8
<heat>
gog are you a RHEL person
<gog>
no
<sham1>
Oh, a pre-RHEL
<heat>
you're probably a RHEL person
<gog>
i mean
<gog>
red hat 8
<gog>
lel
<bnchs>
sakasama: really, i would like to compete in the dumb olymptics
<brunothedev>
my fist linux distro was android 4.4
<heat>
i thought mjg was definitely a RHEL guy but apparently its ubuntu
<brunothedev>
literally fist
<gog>
i use manjaro
<gog>
it works fine
<heat>
BOOOOOOOOOOOOOOOOOo
<bnchs>
for memory management, i used the WORST system for it
<gog>
yeah everybdoy hates manjaro
<bnchs>
a memory pool instead of a memory map
<brunothedev>
gog: M*njaro
* brunothedev
died of cringe
dude12312414 has quit [Remote host closed the connection]
<sham1>
gog: how often do you end up resetting your clock to get updates because the Manjaro team once again cocked up the TLS certs
<gog>
never because i don't update
<gog>
updating is for chumps
<brunothedev>
THEN WHY DO YOU RUN A ROLLING RELEASE?
<heat>
gog tell the manjaro developers to fix their packaging, they're DDoSing the AUR again
<gog>
it's cool and funny to DDoS the AUR
<brunothedev>
ALL OF US IS CHRONICALLY "pkgman update" people
<bnchs>
brunothedev: shut up please
<gog>
but also i don't use AUR
dude12312414 has joined #osdev
<bnchs>
you are outdumbing me
<bnchs>
i'm supposed to be the dumbest here
<brunothedev>
bnchs: i would if i could get how to configure hikari compositor
<gog>
now now bnchs
<sham1>
One could use a good distro like Fedora
<brunothedev>
my brain is smoother than a gumball
<heat>
i rate fedora
<heat>
solid
<bnchs>
brunothedev: my brain is smoother and reflects tons of light
<gog>
it's linux
<gog>
linux is linux is linux
<heat>
i'm going to install DragonflyBSD
<bnchs>
it's not for thinking, it's for being dumb at things
<gog>
me too
<sakasama>
Oh no, bnchs has competition? They're even self-deprecating.
<heat>
BSD for hipsters
<sham1>
As a hipster, I resent that
<bnchs>
sakasama: i will self-deprecate to oblivion for 1st place
<sham1>
HAMMER2 is interesting. Too bad it doesn't actually exist
<bnchs>
but it probably shouldn't be here
<heat>
NetBSD if you're old, OpenBSD if you're <expletive>, FreeBSD if you have a ponytail, DragonflyBSD if you have a ponytail on your neckbeard
<sakasama>
What's a hipster? To me, those are a type of underwear.
<brunothedev>
MA BRAIN IS SO SMOOTH I TYPED THIS WITH THE SHIFT KEY INSTEAD OF CAPS LOCK
<heat>
regular people that don't want to use computers just use linux instead of going to the trouble of installing a BSD
<heat>
actual normal people use windows
<brunothedev>
bsd people pls dont gentrify this chatroom
<brunothedev>
i like here it is cozy and cheap :)
<heat>
i wish i could fucking use windows instead of studying the art of the BSD vfs path resolution
<heat>
I don't get it
<sakasama>
bnchs: Will you consider dropping this horrible hobby in favour of helping me build a bioengineering laboratory so I can rewrite myself and aid other noble causes?
<heat>
not that linux path resolution is any nicer, both look to have been untouched for the last 20 years
<brunothedev>
i would rather die than using windows
<bnchs>
sakasama: i'm uhhhh
<bnchs>
i don't think uhhh
<bnchs>
that's above my extremely low intelligence
* brunothedev
started singing yankee doodle with a musket
<sakasama>
bnchs: Have you actually taken any intelligence tests?
<bnchs>
no
<sakasama>
See, that's just bad science.
<brunothedev>
i am dumber than you
<brunothedev>
i am a santa-denier
<bnchs>
brunothedev: you are just annoying not dumb
<brunothedev>
bnchs: that it is when you dont do something rewarding and the only form of entertainmend is #osdev
<brunothedev>
except the init system is using .xml files
<sakasama>
bnchs: Create a matrix account and call me. I'll verify your claim.
<bnchs>
i don't think that'll be necessary
theboringkid has quit [Quit: Bye]
<brunothedev>
ok but: is ssh or gnupg better for git
<gog>
those are two different things
<gog>
do you mean
<gog>
ssh keys or gpg keys
<brunothedev>
keys
<gog>
because you can use gpg to generate ssh keys
<gog>
or keys compatible with ssh
<gog>
so it's your pick
<brunothedev>
gog: what is the easier one
<gog>
ssh
<brunothedev>
now i need to find a guide that is compatible with pure html, THANKS HIKARI
<brunothedev>
and you too, kde, for kde-sussy-dectector making wayland unusable
<bnchs>
and i thought i was annoying
<bnchs>
maybe we're both equally annoying
<brunothedev>
oh sowwy just going through on a rant
<sakasama>
bnchs: Not yet. You're currently losing the competition, but the moral here is the same as with a nice game of global thermonuclear war.
<zid>
The only winning move is to nuke the other guy harder.
<bnchs>
okay uhhh
<brunothedev>
except thermonuclear war make cools games
<zid>
see: ender's game
* brunothedev
looks at HOI4 TNO and fallout
<bnchs>
HAI GUIZE, HOW CAN I WRITE A BYTE TO A VOID POINTER??? :ooo
<zid>
do kids know about wargames
<klange>
bnchs: very carefully
<zid>
and who matthew broderick is
<brunothedev>
zid: wdym?
<zid>
Sounds like that's a no then
<brunothedev>
zid: are you talking about boardgames or paradox-like games?
<bnchs>
zid: sounds like that game called citizaliations
<bnchs>
where gandi nukes you
<klange>
brunothedev: It's a film.
<bnchs>
(i literally don't know how to spell)
<zid>
that's an incredible way to spell civilization, yea
<brunothedev>
you cant recruit most of the chinese population in civ
slidercrank has quit [Read error: Connection reset by peer]
<bnchs>
zid: i unironically can't spell civilization
<bnchs>
i should be back at preschool
slidercrank has joined #osdev
<brunothedev>
i cant spell probaply, we are the same :D]
<bnchs>
jesus christ, is there no limit to you?
<heat>
all praise gentoo ops
<brunothedev>
bnchs: yes
<bnchs>
gentoo ops please save me from this hell, and end my existance
slidercrank has quit [Read error: Connection reset by peer]
<sakasama>
This is the worst burlesque show I've ever seen.
<zid>
heat when do I get more benchmarks
* sakasama
demands a refund.
slidercrank has joined #osdev
<zid>
I ran a factorio benchmark earlier at least
<heat>
when I stop fixing my bad UNIX and/or stop writing this bdf2c
<zid>
we could test onyx in vmware 17 too
<heat>
which is remarkably easy if I half-ass it
brunothedev has left #osdev [j'aime d onion frite a huile! (pls gib fried onion)]
brunothedev has joined #osdev
<heat>
BDF is a stupid simple format lol
<heat>
ez
<bnchs>
sakasama: i'm sorry for being a retard here
<sakasama>
bnchs: Really, it'd help a great deal if you'd stop insisting on your uselessness and instead actually do something.
<bnchs>
like what?
<sakasama>
Even I make an effort to do useful things and my entire life has been a disaster for longer than you've existed.
* brunothedev
picks up popcorn
<sakasama>
That bioengineering laboratory would be a very nice start. Alternatively, how about something you actually care about?
<bnchs>
i failed at it
<sakasama>
What was it?
<bnchs>
reverse engineering
<sakasama>
Failure is a learning opportunity.
<bnchs>
my brain was too burnt-out from staring at m68k code all day
<bnchs>
and trying to see what they do
<brunothedev>
fun fact: If devote enough of it on something u can do everything
<bnchs>
brunothedev: you sound like a quote from a NES game
<sakasama>
Great. Reverse engineer DNA instead. I'll send you some slugs you can torment for science.
<sakasama>
We get signal. Main screen turn on.
<bnchs>
reverse engineer is torture for me
<brunothedev>
open source slug
<bnchs>
it's a necessary evil
slidercrank has quit [Quit: Why not ask me about Sevastopol's safety protocols?]
<brunothedev>
slidercrank: tell me about it
slidercrank has joined #osdev
<brunothedev>
slidercrank: what about sevastopol safety protocol?
<slidercrank>
brunothedev, I'm afraid no one is safe :) But my quit message is from the game "Alien: Isolation"
<brunothedev>
quit messages are funny, you can say anything
<nortti>
heh, forgot mine was "Anthropologa se non exstare reperit. Solum exstat pyramis ingens mechanica."
<heat>
deep
<heat>
gog, bazinga quit message?
heat has quit [Remote host closed the connection]
heat has joined #osdev
<brunothedev>
nortti: i read this mentally listening to "merck toe hoe sterck"
<heat>
cheers the irc client crashed
<brunothedev>
heat: what client?
<heat>
the offtopic client
<gog>
????
<zid>
porn client?
<gog>
hi i'm trying to install arch on my vnc
<gog>
it's going poorly
<gog>
basically i can't type /
<zid>
typing / is overrated
<brunothedev>
OFFTOPIC [ TOPIC IS OFF ] ** I KILLED TOPIC AND YOU CAN`T DO NOTHING ABOUT IT **: heat: what client?
<gog>
maybe so
<zid>
why is there a backtick between N and T
<bnchs>
brunothedev: i so dearly wish for a +q
<brunothedev>
before i switch to abnt2 ";" is "/"
<sakasama>
gog: Go Windows, so you only need backslashes.
<bnchs>
quiet flag any%
<zid>
onyx has that issue, I can't type anything
<zid>
because it uses raw scancodes + portuguese layout
<brunothedev>
bnchs: making unfunny jokes is my persona
<heat>
ok can shutting up be your persona now
<brunothedev>
yes
<zid>
oh sorry heat
<heat>
no problem zid
<heat>
love you
<zid>
heat when will onyx let me type
* bnchs
imagines heat kissing zid, after hearing "love you"
<heat>
never
<bnchs>
i'm gay
<sakasama>
Define gay.
<heat>
zid, I actually need/want a good keyboard description database
<bnchs>
gay = happy
<heat>
because that would solve any issue
brunothedev has left #osdev [the-industrial-revolution-and-its-consequences-was-a-disaster-for-the-human-society-,-causing-mental-pain-in-the-first-world-and-physical-pain-in-the-third-world]
brunothedev has joined #osdev
<klange>
You can have spaces in your quit message, just so you know.
zid has left #osdev [Test balls]
zid has joined #osdev
<zid>
did it work
<FireFly>
something they presumably alerady know since they've used spaces in part messages before
brunothedev has left #osdev [no-seriously,-i-dont-know-what-am-i-doing,-i-am-making-eveyone-miserable-because-i-dont-have-entertainmend. peace]
<zid>
am I seriously going to have to disable part messages for the first time in 30 years
<zid>
cus of one fucker bypassing ignore using it
<klange>
imma kick all y'all unless some osdeving happens soon
<sakasama>
I'm busy reinventing basic data structures. That qualifies, in a futile way.
<heat>
i wrote a pseudo bdf2c in python
<zid>
have you used a zidlist yet today
brunothedev has joined #osdev
<sakasama>
No. That sounds obscure and prone to malfunctioning.
<zid>
wow, blasted
<heat>
something I *dont* handle is UTF-8 through write calls, i.e if you write a unicode codepoint with multiple write()s, you get multiple bad characters instead of a unicode codepoint
<zid>
neat
<gog>
i got ssh going
brunothedev has left #osdev [gonna-install-voidbtw]
<gog>
now i can install arch
<zid>
I had that issue with telnet
<heat>
which is like, mildly incorrect and annoying, but who tf does this anyway
<heat>
answer: bash on Onyx, for some reason
<zid>
I really didn't wanna like.. strdup the packet and recombine it with the incoming one
<sakasama>
heat: Why not write the raw bytes?
<zid>
if someone sent me a bunch of data a character at a time
<heat>
sakasama, write the raw bytes where?
<sakasama>
... wherever they were going to be written anyways?
<heat>
this is all part of the VT console code, so I'm parsing bytes and storing stuff to "console cells"
<zid>
they were going to be looked up in an array and turned into a column of bitmap
<zid>
ultimately
<heat>
which means I need a single codepoint instead of UTF-8 bytes which will end up in multiple cells
<zid>
but you need all of the bytes at the same time to do that
<zid>
so you'd need a client buffer that can be partially filled
slidercrank has quit [Read error: Connection reset by peer]
<zid>
and to memmove the unparseable shit back to the start
<zid>
or set it up as a ring buffer
<klange>
either tell bash you're using a single-byte encoding, or join the 21st century and implement utf-8
slidercrank has joined #osdev
<zid>
that's what we're talking about
<klange>
smdh having a bash port but not bothering with utf-8
<heat>
yeah so I think the correct impl is to just keep some utf8-to-32 conversion state
<zid>
implementing people sending you utf-8 codepoints with a gap between the writes
<heat>
but this is obviously prone to weird races with other writers? fucking weird man
<zid>
I'd just add a small buffer to the 'client' state somehow
<klange>
stateful parser
<zid>
the question is which struct you hang it off
<heat>
let me check linux
<heat>
I bet 10 on how it's the global struct
<heat>
so multiple writers will fuck it up
<zid>
are 10 geese money worth anything
<zid>
heat: telnet is worse because there's no limit to the length
<heat>
yes it is
<heat>
it's in the global console struct
<zid>
I'm guessing just because that's the only vaiable place to hang it off
<zid>
even though it isn't ideal
<heat>
i mean, in theory you could hang it off the fd struct
<zid>
they don't want an intermediate struct to lifetime manage that only handles buffering one character between the fd and the console
<heat>
in fact it's probably a superior solution
<zid>
yea but then you clutter the fd struct for everyone
<zid>
and fds do not care about codepoints
<zid>
do fds have any internal buffering?
<heat>
well, the fd struct already has something like a void *helper; for the fs impl
<zid>
If they did you could probably just set the watermark to 3 bytes and left 3 bytes in ti I guess?
<klange>
The only thing that should ever care about this is the thing that's processing it, which is to say the terminal emulator itself.
<zid>
leave* it*
<klange>
None of this belongs in file descriptor code. None of this belongs anywhere near file streams.
<heat>
so you can totally pack your utf32 codepoint there I guess, unless not 64-bit, in which case you probably can-ish but it still sucks
<zid>
that's a good point, if you make it transparent then the terminal emulator is the thing that cares
<zid>
and that's 100% clean
<heat>
klange, this would not be in file descriptor code
<klange>
you already presumably have some ANSI escape parser that is stateful; you throw another layer of state above that for parsing UTF-8.
<heat>
yes
<heat>
pretty much
<heat>
but the fd-private utf8 stuff would be like: <searching for patch>
<zid>
this just punts the question to the terminal though
<zid>
how do you deal with multiple writers to the terminal emulator
<klange>
And the TTY layer shouldn't care about these things. Intermixed UTF-8 bytes is the least of your problems - what if one writer is trying to write an escape sequence and another writer writes at the same time? Are you going to have a whole escape parser in your TTY layer so it can keep them atomic?
<heat>
yeah, no good alternative to global state there
<klange>
(I suspect the answer is "no", and if the answer to that is "no" then that should also be your answer to whether you should do that to handle UTF-8 byte sequences)
<heat>
klange, I think the TTY has some UTF8 options for Some Reason (which I haven't figured out yet)
<klange>
(However, if your answer to that is "yes", then by all means, do the same for UTF-8)
<heat>
#define IUTF8 0040000
<klange>
heat: In Linux? Only to understand when backspacing that it should continue to delete on continuation bytes.
<heat>
ah no, I see
<heat>
this is used in linux as an indicator from the vt to the tty users that the terminal does support UTF8
<heat>
it always does the correct thing on continuation bytes
<heat>
ah wait no, it does not
<heat>
it's also used for continuation byte stuff
<heat>
but that's as far as special handling goes
<klange>
It shouldn't, without IUTF8 it should only delete one byte from the input buffer on backspace, so that it can correctly support older single-byte encodings, particularly with real physical serial terminals.
<heat>
yep, checks out
<heat>
they had a macro I wasn't searching for
<klange>
I don't support this myself :( but also I expect most things to be using my fancy readline replacement that understands not just UTF-8 but cell widths
<heat>
one day i'll figure out tab backspacing
<heat>
which is nuts although linux does seem to have it mostly figured out
<heat>
I remember I did test on FreeBSD at the time and the results were slightly broken
<klange>
there's some magic internal x cursor tracking thing, it's pretty crazy; I just cheated and made the canon buffer print tab as ^I (and then I support it like other control sequences that are easy to detect and backspace two cells for)
<klange>
s/x cursor/cursor x/
<heat>
yep
<klange>
I think the cursor x tracking is extra dumb and goes by bytes, so a three-byte utf-8 sequence that is actually 2 cells wide appears to be 3 cells wide for the x tracking, and backspacing a tab after that puts the cursor one cell to the right of where it should be.
elderK has quit [Quit: Connection closed for inactivity]
slidercrank has quit [Ping timeout: 276 seconds]
<heat>
oh yeah, have you handled like fancy console rendering for "exotic" languages