ok so I got this old core 2 duo machine, you know, a modern x64 intel computer. the Fedora 43 live usb doesn't boot on it, grub says something has a bad sector. but the same live usb works just fine on another computer, and i reimaged the usb drive just in case and it's still misbehaving. I don't think I'm gonna get this working, but I would be interested to know if Fedora dropped backwards compat with non-uefi systems or something like that
EDIT: fedora 43 supports x86_64_v1
what I really want to do is to boot it to a linux new enough to build mollytime so I can then run mollytime and go "ok yes, this is good" or "oh god". I need sdl3 and something in the ballpark of clang 20
@aeva that's the one where you do PIP README.TXT=CON: isn't it
I'm also fantasizing about making my own live USB distro for mollytime, so if anyone knows anything about how to make a custom live linux distro, π€
@aeva@mastodon.gamedev.place whats a linux
@puppygirlhornypost2 it's some microsoft cloud thing iirc
@aeva i know a bit about this. kind of out of it rn but ive done a lot of live image stuff / have friends who have done it different from how i have that i talk to about it
@artemis I'd appreciate some pointers on where to start when you're up for it
@aeva Red Hat has been removing older Intel support in the RHEL 9.6 and later releases. Not sure which Fedora gets forked to RHEL. But RHEL 10.x has cpus less than Skylake removed.
@aeva A good place to start would be βLinux from scratchβ. But thats kinda jumping into the deep end. Definitely recommend doing it for your first time in VM. Hereβs the website if you are interested. https://www.linuxfromscratch.org/
currently my best plan to get mollytime working on that machine is to port mollytime to haiku. I think my meds are starting to wear off for the night
@aeva more likely they dropped support for x86_64v1.
Debian still has v1 support, and CERN has indicated on the mailing list that they'd move away from Debian if they dropped it, so that should work.
@GyrosGeier oh no, there's more than one x86_64?
@GyrosGeier I looked it up and I think you might be right
@be the usb one
@be someone else suggested that fedora might have dropped support for x86_64v1
@be I'm gonna try debian testing next and see whether it's gonna be debian testing my game or debian testing my patience
@aeva
Just yesterday i installed fedora 43 on a pentium dual core with bios/mbr and worked fine.
@accela that'll do. can you bring it over here?
@GyrosGeier debian testing live iso just says "os error" or something like that when I tried to boot it
@aeva oh wow.
The next thing I'd try is probably GRML (which has the big advantage that if it doesn't boot, the developers want to fix it).
Might also be that the UEFI interface is not fully compliant, that machine is probably from a time when vendors were still learning.
Debian has a tool called 'live-build' it's used for creating the official live images and can be configured quite easily for creating custom ones.
I once used it to create a prank 'distribution' as a gift for someone who was leaving a job and which did all the things he had been railing about what we shouldn't do in our software for Linux distributions. Took me half a day to do, most of that was writing the script that it would start at boot time.
@aeva it could require a 32bit UEFI boot loader. I have that on an old Mac mini with a Core 2 Duo
@pupxel i mean like one with a gui and sound
@aeva it has instructions all the way to installing steam :3
@GyrosGeier I don't think this machine has a "uefi"
@pupxel I'll keep that in my back pocket for the next time I feel like I have too much free time π
@aeva if you want to take the shorter route and modify an existing distro, everyone should have instructions for that, ubuntu's at https://wiki.ubuntu.com/DerivativeDistroHowto
@accela alternatively, how does one do that
@GyrosGeier do you think a CD installer work or would that be basically the same problem again? is that still a thing?
I should add:
Obviously a part of why it only took half a day was because I didn't care about having a smooth, polished experience. I could have spent a lot more time fine tuning the config.
It served its purpose, which was to get a laugh from the guy, and it was 100% functional from the physical CD which we gave him at the goodbye party, but it was a bit rough around the edges. With a few more days I could have fixed that, but there was no point, obviously.
- replies
- 0
- announces
- 0
- likes
- 1
@aeva You mean boot the live usb?
If you verified that it boots in some other machine with non-uefi legacy bios/mbr then, i don't know, maybe an incompatibility somewhere between bios-usb controller-usb stick on that particular machine.
Try with a different stick, burn the image with a different tool (i used the official fedora mediaWriter) or maybe try ventoy
@aeva the Debian and GRML images at least are polyglots that are also valid ISOs, so that might work.
IIRC ElTorito works by loading a 2.88MB floppy image and booting that, so that might be more reliable than BIOS USB drivers.
@GyrosGeier I just checked, the options are @efi, non-efi, and "auto"
@aeva @GyrosGeier meow??? I don't make computers boot, I just bite em
Ugh. In the early days of Linux, I had to download source code and build the kernel because people weren't yet distributing binaries. That was probably before you were a teenager, or maybe before you were born.
In recent years, I've built Yocto for embedded stuff.
This month, I've been fighting with the LMDE7 live ISO, which gives only a CLI (no GUI beyond GRUB2) when booted on a near-20-year-old machine that boots the LMDE6 GUI in only 640x480 (despite higher-res VESA modes available).
@aeva yes, for sufficiently narrow definitions of "linux"
ok it turns out the ancient version of ubuntu studio that's running on my old core 2 duo desktop only recently fell out of support because i had the good sense to install an LTS version, so upgrading to the latest LTS might be fairly straight forward. current plan is to do that and if the machine is still operable afterward, see if the clang version is new enough to build mollytime and otherwise install distrobox or something if it is not
also, i had this great / horrible realization that on a long enough time scale, gentoo is probably the best option for continuing to run linux on hardware that is old enough for normal linux distros to tell you to throw it in the garbage
@aeva That's what I do! Compile binpkgs on a modern (from 2013) PC and then install them on 20-year-old x86 hardware. Works great for me, though lack of SSE2 requires me to patch some softwares on my own, Gentoo didn't do it for me.
(But I can't help you with Mollytime because I've no idea what that is and it's not in the Gentoo repositories, sorry)
@aeva similar conclusion here π₯² Gentoo or a DIY distro
@nina_kali_nina I should probably bite the bullet and switch this machine over to gentoo sooner rather than later.
@vaporeon_ mollytime is a visual programming language for audio synthesis that I have been developing since this summer. I would be surprised if there were a package for it yet since I haven't announced a stable release yet. Off the top of my head, the software dependencies are a compiler that can build C++ 23, meson, ninja, python, pybind11, and SDL3.
@vaporeon_ I'm not using any special cpu intrinsics, so but the code assumes a 64 bit CPU. I don't know of any reason why a x64v1 CPU would not be able to use it.
If the 64bit constraint were worked around, the great reliance on 64 bit floating point math probably limits how far this can scale down.
@vaporeon_ this is the current tail of my devlog thread if you are interested, btw https://mastodon.gamedev.place/@aeva/115620169762742174
RT: https://mastodon.gamedev.place/users/aeva/statuses/115620169762742174
@aeva In principle, I ran Gentoo on an Intel Core 2 Duo Mac Mini until that computer broke, so for a Core 2 Duo, you don't even need a second modern computer for compiling (though that would be faster), you can just install and use Gentoo.
I can confirm that Gentoo works on BIOS systems no problem, I've personally installed it on multiple systems that only have BIOS.
It has Clang 20 and libsdl3.
Although, if you don't actually want Gentoo, you just want your stuff to work: did you test yet whether the latest Debian boots from that USB stick? I remember installing it successfully on BIOS-only hardware a few years ago, but the latest version (Debian 13, which is the only one that has SDL3).
Unfortunately can't test it for you because they dropped 32-bit x86 support in that latest version
)
@vaporeon_ I tried the latest debian testing, but I wasn't able to get the live ISO to boot either from a bluray or a usb on this machine
@vaporeon_ I don't mind the idea of potentially running gentoo on this machine though
@aeva Good luck! (Let me know if you want any advice, I like talking about Gentoo, I don't know whether you've installed Gentoo before or not and I don't want to be condescending by explaining things that you already know)
In case it helps, I followed this article to set up building binary packages on the faster machine and installing them on the slower machine: https://wiki.gentoo.org/wiki/Gentoo_Binary_Host_Quickstart
Problem is that that requires an existing Gentoo machine, though... Or doing some stuff with Docker on a machine that runs some other distro, I guess
But compiling on a Core 2 Duo itself is 100% possible if you're OK with letting big compiles (like Clang and GCC) run overnight
@vaporeon_ I used to main gentoo, but that was probably around 2005 give or take. The main thing I remember is foss project maintainers tend to get really annoyed when you report bugs that were caused by building with -O3 π
I don't mind having multi day long compilation jobs to install or update packages, I know to plan accordingly. I wouldn't mind pointers on how to get the most out of modern gentoo though.
alright, round one of upgrading old LTS ubuntu studio to slightly less old LTS ubuntu studio complete, and the computer is still operable! now for round two π
@aeva Coincidentally, I recently installed Gentoo from 2007 on an old computer for retrocomputing purposes; the main difference I noticed was that some of the paths are different (and the ebuild format also is incompatible with newer ebuilds), but otherwise I could use it just like I use modern Gentoo
So I don't have useful advice here, but I think you'll be fine...
The latest revisions of the Gentoo Handbook apparently suggest XFS as the default filesystem now and I genuinely don't know why (they didn't do it in 2021, this is a very recent change), but ext4 is still completely fine, I use ext4 on all computers except for the "storage server" (actually a normal PC with two giant hard drives in it) with ZFS
My CFLAGS are just -O2 -pipe -march=native -fpermissive because I'm boring (and also because I'm not sure how to measure whether higher optimisations actually made the program run better or whether they just increased code size for nothing), plus I used app-portage/cpuid2cpuflag to set CPU_FLAGS_X86 in /etc/portage/make.conf to all the CPU flags that the processor supports (it'll run without that, but some programs like ffmpeg can enable more optimisations if they know which CPU flags are available)
@aeva wow, you got one of those keyboards without any letters on the keys... fancy...
the piano was probably new in 2000. i built the now-repurposed computer in 2011. it's funny how differently these things age
@c0dec0dec0de @The_T @aeva You can spell BACH for a start :-)
@TomF @c0dec0dec0de @The_T well, BAC, at least
@aeva @c0dec0dec0de @The_T It's the one musical notation joke I know:
https://en.wikipedia.org/wiki/BACH_motif
@aeva I assure you, the piano was not new in 2000. I am personally aware of piano compositions as early as 1997
alright, I've successfully managed to bring the Compiano Forte up to the latest Ubuntu Studio 24 Point Whatever and sound still works even, and I am completely stuffed with ο½’thanksgivingο½£ just positively filled to the brim
I got clang 20 installed on this machine, which is important to building mollytime, but, uh huuuuuh, Ubuntu Studio 24 Point Whatever doesn't seem to have SDL3 available
semi-related, I've decided that my collection of mostly functioning old computers that I've been holding on to just in case is now to be hereby known as my "Beowulf Clutter"
@aeva /bows
@aeva i thought it had an option to specify a clang executable...?
@JamesWidman when I punch in clang++-20 it just uses clang++ which gets it 18
@aeva *me, a piece of posix software* this is my emotional support clang
@JamesWidman oh wait I think I successfully tricked it
ok I got it using the good clang, but it's not using the good clang's standard library somehow, I think it's using GCC's?
@aeva oh, I know this⦠that's the Lament Configuration
@aeva i for one support your son's freedom to choose whichever clang he likes
@aeva [Slashdot commenter voice] Whoa, imagine a Beowulf clutter of those!
@aeva@mastodon.gamedev.place this fucking rules so hard. Being able to follow along as you post about making music, and writing music software and making mollytime and all the synths... it's so cool. Thank you for posting about all this. I look forward to whenever you do.
@aud aw β‘β‘β‘β‘β‘ ty ^___^
@aeva ukraine colors yuss
glxinfo -B reports this machine has hardware accelerated 3D graphics supporting a maximum GL core version of 0.0 (and compat version of 2.1) so I guess for all intensive porpoises this machine does not in fact have hardware accelerated 3D graphics anymore
I didn't check, but I'm guessing SDL picked the software rendering pipeline, because the UI was a bit sluggish. however! all of the patches I tried played just fine, so the Core 2 Duo can handle the synth pipeline which is the important part
my main takeaways from this exercise so far are 1) I'm a long ways off from ever needing to optimize the audio thread performance; none of my patches are complex enough yet for it to be problematic that I'm still just chaining a few dozen lambdas together passing around doubles through a long chain of shared pointers at 48000khz 2) until polyphony makes me eat my words, the benefit of doing so will mostly be in improving battery life on my laptop, and 3) the UI perf has room for improvement
oh holy smokes, /proc/cpuinfo says this is a 3.2 ghz cpu. i assumed this machine was somewhere closer to 1 ghz
ah, it's an Intel Pentium E5800 "wolfdale" processor, so either I am mistaken about it being a Core 2 Duo or it is one and the branding is just confusing, but either way wikipedia dates this somewhere between 2008 and 2012. I would have purchased this either late 2011 or 2012 because I remember buying it to celebrate getting a job at Creative Commons
@aeva even the retro vibe machines are fast now
@halcy I remember back in high school twenty years ago a friend I were drooling over a video of someone overclocking a pentium 4 to something crazy like 4 or 5 ghz (with an elaborate liquid nitrogen cooling system)
@aeva Pretty sure in this era they applied the Pentium or Celeron branding to the low-cost parts, and the Core 2 Duo branding to the high-cost parts
@aeva now I have a laptop in front of me that turbos up to 4 ghz just as a regular thing. and it has like 16 cores that can all do that. it doesn't even really get very hot. also the instruction set is of course way better. it's a bit silly.
@halcy CPUs haven't been slow for a very long time and now they're crazy fast. you really have to go out of your way to get a dog shit CPU now
@halcy there's basically no good reason for this machine to be obsolete, except that infosec researchers are keeping the trash gyre alive with shit like this
bugs : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs itlb_multihit mmio_unknown
@aeva I have a CPU on the dashboard of my car like just as a fidget toy and it's like a 2ghz dual core. I considered selling it on ebay when I took the computer it was in apart but it literally would be more in postage to do so than the thing is worth, if someone even wants it
@halcy hehe I used to have a pair of ram sticks hanging from the rear mirror like a pair of fuzzy dice
@swiftcoder I just found a chart on wikipedia that confirms this: E7xxx and E8xxx would have been Core 2 Duo, higher would have been Xeon, and lower was pentium and celeron. so this would not have been sold as a core 2 duo
@aeva says here it's a Pentium https://en.wikipedia.org/wiki/Wolfdale_(microprocessor)#Wolfdale-3M
ok https://en.wikipedia.org/wiki/Wolfdale_(microprocessor) has a handy little chart that explains intel's branding for this processor generation. the E5800 was sold as a "pentium" and not a "core 2 duo", so this is actually a *lower end* processor than I thought π
@ruojake I just found that as well XD
I need to find a more dog shit computer to figure out where exactly the perf wall is. Maybe this means there's a riscv port in mollytime's future.
@aeva too great for a Celeron, too flawed to join the Cores 2 Duo, forever cursed
shitpost
@aeva
```
emerge -avt gentoo-sources
eselect kernel list
eselect kernel set <n>
genkernel all
grub-mkconfig -o /boot/grub/grub.cfg
```
it's something like this, I think
shitpost
@ki ah that fixed it, thanks!
@aeva 8086? :3
i'm trying and failing to find a screenshot of the part of chrono trigger where Lucca says to Marle "Machines aren't capable of evil... humans make them that way", but it turns out there's a lot of fan art of that scene, which is nice.
anyways, computers aren't slow... it's programmers that make them that way
@pupxel so, no, but I have been pondering on and off whether or not it might be worth it to try to port mollytime to dreamcast
@aeva Sometimes the lack of programmers make them slow.
As in: I don't have the time to optimise because I already have to do all the work in the first place 
@pupxel probably not XD
@shinmera look as long as your not dumping everything inside react/electron you're probably on the good side of the curve
@aeva Currently the "dogshit wall" is #i486SX because #Linux dropped support for #i386 with Versions 3.4.99 & 3.6.9 respectably, tho most people would say anything below #amd64 w/ #SSE2 (or #i686) is out of #mainstream support already, with #RHEL6 being EoL'd & #Debian being the last major distros offering #32bit support.
@janet_catcus @kkarhan@infosec.space :(
@aeva I built my own UI toolkit and it's slow as balls
ChronoTrigger spoiler
@aeva I still wish this line was followed up on instead of the tropey evil AI backstory that Mother Brain spontaneously decided to commit genocide after the Day of Lavos.
Chrono Trigger spoiler
@Mayabotics in lucca's defense, large language models hadn't yet been invented in the year 1000 AD
@aeva ugh, this is so good. I am also guilty of this. Those SGI machines are gonna be part of something bigger one day, I say again for the 20th year in a row
re: Chrono Trigger spoiler
My fan theory about this comes from comparing the bit of the 1999 AD world map we see with 2300 AD's, and how there are structures/roads that had to have been built after the northwest continent collided with the eastern fragment of the central continent.
Clearly, humanity tried to continue on after the Day of Lavos despite the devastation, but given how the southwest and southeast continents are greatly diminished, and Geno Dome is roughly where Choras is, it seems plausible to me that the survivors reprogrammed the factories and conservation robots to use as proxy soldiers in a war over the dwindling resources, and Mother Brain was the result of the conflicting directives.
re: Chrono Trigger spoiler
@Mayabotics this is a very good theory imo
@heavyimage don't stop believing
@aeva same, friend. same.
@mairi I vaguely recall a lot of linux was involved
@aeva Try to install ventoy on the usb and just drop the iso on it - I think it may do the trick. I actually am at a retro gaming event with my old Core 2 Quad - will try it later today when the PC is not in use, I'm now curious π₯°
@aeva okay, so Ventoy boots Fedora 43 install flash drive properly on Core 2 Quad Q9300 with intel P45 chipset.
Attaching photos for reference. Didn't try to actually install, I need that computer currently, but may try it next week. I'm curious πΈ
@aeva Also, I've digged in a little bit and it seems that Fedora still supports x86-64-v1 architecture whereas some distributions (like openSUSE Leap 16) upped the requirements to x86-64-v2, which means Core 2 CPUs are out and only the first Core iX (Nehalem) and higher are supported by such distributions. Which is still 17 years old, but it's narrowing the window of support of current software for still reasonably working "retro" hardware.
@kayla ah interesting. good to know!
I found this totally baller old photo of the compiano forte while hunting my thread about reviving it just now
https://mastodon.gamedev.place/@aeva/110048470696471655
RT: https://mastodon.gamedev.place/users/aeva/statuses/110048470696471655
Anyways, to kill time while waiting for dinner I had a look at what other hardware I had in that machine besides the Pentium E5800 and a soundblaster "SB Live!".
now, I don't meant to brag, but this power house also has a "Mesa Intel(R) G41 (ELK) (0x2e32)" UMA GPU with a whopping 1536MB of vram to work with and my choice of OpenGL 2.1 or OpenGL ES2 π₯΅
@aeva i recently discovered mkosi (https://mkosi.systemd.io), tho idk if it can do live usbs?
@aeva this is the secret optimization technique experts DON'T want you to know
@hipsterelectron it's basically the "Who's The Scariest Monster" game https://www.girlgeniusonline.com/comic.php?date=20110815
@aeva programmable pipeline? fancy! 
@celestia gonna write some Shaders with this bad girl :3
@aeva "1536MB of VRAM*"
*as long as system RAM supplies last
@aeva I sure do miss the SB Live!
I remember finding a DOS only, hardware wavetable MOD player for it and it sounded amazing. Too bad it was released right at the end of the direct hardware access era.
@aeva CRAZY drawing style those faces are incredible
@hipsterelectron @aeva oh damn? You get to be one of the lucky 10 thousand today? Girl genius is so good!
@hipsterelectron @emily_s it is so good <3