AboutAspiring tech-in-training. May contain nuts. Processed in a facility that also processes autism, consume with caution.
SkillsPython 2/3, TI-BASIC, overwhelming stupidity, and the ability to break even the most foolproof systems via breathing nearby. Remote systems tests ongoing, current outlook: still applies...?
LocationYes. No? Maybe.
Joined devRant on 8/9/2018
Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
apparently my bank's password length limit of 10,000 is too much for paypal's app to handle and it fucking imploded. sadly, no screenshots were allowed by the app, but it fucking broke so hard it spat logs and shit at me with no formatting or anything. it was NUTS dude9
so I found out that i'm too stupid to understand floats... I look at the structure and my brain immediately smooths over. I just can't understand it for some reason. Even better: this shitbox calculator requires them for LITERALLY EVERYTHING. I can't even have it take a register and turn it into a float or anything, so I can't even operate on anything without massive assembly routines, and I just don't understand what the fuck any of it does or means.
i'm really not cut out for a programming job am i5
TI can't be competent enough to use their own fast circle routine that they implemented in their calculator but they have the braincells required to make the "update the screen" routine "rst 28h"?
i thought it was gonna require a flipped I/O bit or a farcall to another Flash bank that takes a few thousand cycles or something, considering how much sense any of this shit makes inside...2
i've abandoned an old project i did for a retro computing community (i've posted about it here before) because I can't find any motivation to do literally anything anymore, and people in said community were waiting on it. If you want to check it out, it's too big for GitHub, so I uploaded it to anonfiles. I don't know if I can post a link to that in a rant though, so if anyone's interested i'll post the link in the comments once asked.4
I know people are upset over this whole "they're raising the minimum wage to $15/hr" thing but consider the following:
if your employer doesn't raise your wage/salary to higher than that in response, they were only paying you the minimum possible amount to be attractive for your position, and would've only been paying you minimum wage if they could've. They really don't value you as a worker.
note: apparently some businesses have to be approached by you for a "raise" before they can do this in some positions even if they want to raise someone's wage/salary, or so i've heard?11
finally got a Powerline set, so I can actually *use* my desktop upstairs.
...wait, my ethernet isn't working.
look for the chipset's proper driver package...?
"oh it installs the wrong driver by default, which doesn't work on kernel 5.x. Use <other driver, DKMS>"
"oh it won't see your device? downgrade to <version>"
DKMS error: "<snip>/linux-headers-5.10<whatever>/Documentation/Makefile" doesn't exist
fuck it, plug laptop into powerline adapter
less useful than current situation
i'm going to fucking cry8
An entire platform was removed from Google Play, and may be removed from other markets too, not for something they did, but because of the POLITICAL ALIGNMENT OF A MAJORITY OF ITS USERS.
"the users are evil" you're right, let's ban Tor, Snapchat, Whatsapp, Twitter, Facebook, etc. because they've got a metric fuckton of "evil users" too. Oh. Wait. No, that's not how that works, is it?
At some point I need to do an older project i've had on hold a while, but it'd require writing my own ROM patch system as a major step in completing it, as i'd need to dynamically patch stuff into older games based on system, which current patch formats don't allow for. (This project will also help me learn a few things I need for yet more projects I've got stashed away, so it needs to happen eventually.)
Now, the interesting part: the patch format. I was debating on whether to use binary data, like IPS/BPS and similar formats do, which would be easier to implement... but if I were to have plaintext patches, you'd be able to not only understand what's happening, but also have things like scripting and conditionals and user-defined options and such. This would be WAY harder to implement, slow as fuck, and require an assembler per-target-system, either external or internal... but it'd be transparent, editable, and hella extendable.
This would all happen after I'm both over my burnout AND done chewing through my current stack of projects and such, of course, but still... which sounds better to you, dear reader?2
the usual: suffer in the name of curiosity.
all jokes aside, my goal is to finish several projects and take a long-ass break from it all to fix this burnout, and maybe even find a job somewhere in there too? hopefully? stretch goals?
"hey the hi-8 camcorder's working again, can you get this PCI tv tuner card working so we can transfer the tapes to a digital format"
here we go again...
no stickers, so throw it in a machine, boot debian's installer, switch TTYs, "lspci": okay, a pair of "Brooktree BT878" devices. Drivers? ..."support built into most kernels since 2.4." Didn't they remove a lot of legacy hardware support from 5.x or 4.2x or so? Debian works with it... oh, "Debian Sarge." Kernel 2.6. FUCK... well, we'll try Debian 10.6 latest and see what happens.
Currently installing Debian 10.6 on a victim machine from a nonfree ISO to test this. (goddamn, how many times have I installed debian onto something?) Hopefully I don't have to go find a Debian oldoldstable ISO or anything...2
finally got TI to cough up their SDK and I noticed there's no compiler or linker or anything. Turns out I need to use TASM.
...TASM is for MS-DOS or compatible. I'm on Linux.
Well, it went poorly, as usual, specifically like this:
- tried to automate building with DOSBox config and Python script: output binary always corrupted. Manually repeated, TASM mangles output on DOSBox every time. No PCem or 86box, and i'm on a Ryzen, so no KVM DOS. Out of luck there.
- TASM Linux build or wrapper? No build, but there is a wrapper! ...wait, it needs... 4 things written by random people to be made from source. I mean, that's not actually that bad... oh, after setting all of them up (and struggling through some autoconf/automake bullshit, one of the programs only had source for a 2.x kernel and autoconf/automake were not happy about it) it fails because one project's been worked on a lot more and dropped support for working with the other 3... goddammit.
- Community SDK? Several options for this... but all of them need .NET 2 to run on Win9x, don't work in Wine, or require... hey look, TASM! GODDAMMIT!
- DOS on a real machine? It's a massive bitch to shuttle files to and from a real DOS machine quickly and I can't take 30 minutes between builds that take me 4 minutes to change enough to need tested again.
why must i suffer like this23
my 4TB Seagate HDD is failing in a very strange way:
I noticed an issue where my PC would just outright hang for a minute or two occasionally when swapping to the 4TB HDD. When I look at logs, when it hangs, the 4TB HDD times out but then on a retry IMMEDIATELY reads whatever sector just fine. In fact, it reads fine constantly for a few days until the same sector has an issue. So, the timeout is a remap, then? No, as the spare sector and bad sector counts in the SMART info don't change. It doesn't even change how many read errors or anything it's had. Strange, but let's test it with Seatools to be sure.
Tests go as follows:
- Short: pass
- Short: pass
- Long: seatools immediately crashes. Reopening seatools, it pulled a serial of all zeroes... okay....?
- Long: seatools immediately crashes. Seatools gets the right serial on reopen.
- Long: pass
- Long: fail
- Long: pass
- Long: seatools immediately crashes. All zero serial again.
i have no idea what's happening20
for your next edition of "TI's constantly been smoking crack since the 80s and has no intention of ever stopping":
the TI-8x calculators have a hardware buffer and an OS-provided buffer for screen data, effectively being an "immediate" buffer in hardware, to be displayed next VBlank, and a "slower" buffer, being what's copied to the "immediate" buffer when the OS decides it's time to update the screen. All well and good, maybe a little weirdly done but all in all makes sense. (You can even define a third buffer in RAM if you need to triple-buffer your shit.)
The problem arises when you use TI-BASIC and try to draw to the screen:
If you do something like, say, draw a circle, you'll notice that it's visibly drawn to the screen one pixel at a time. However, looking through what bits of the SDK I can find, the OS' "draw circle" assembly routine *doesn't update the immediate buffer!*
This means that, in TI-BASIC, the "draw circle" routine doesn't use the ACTUAL circle-drawing routine the OS provides, but instead individually calculates and plots a pixel, then updates the hardware buffer (an ENTIRE 768 bytes are copied EVERY TIME) and waits for VBlank to pass before repeating for the next one. In other words, it's deliberately slow as fuck.
Why? All the drawing commands, outside of like 2 or 3, do this. Why would you deliberately slow down the process of drawing to the screen on a system that you KNEW would be popular for people to code on???10
trying to unpack game's archives
"this game uses .arc files"
*glances at game's asset folder*
*tries dat/fat unpacker for other game, packer crashes*
well we're fucked, huh4
apparently with massively long videos, with no timestamp corruption or seek table fuckery, like ACTUALLY massively long videos, VLC dies somewere around the "several hundred hour" mark when trying to get the next frame.
is this a bug or did my hubris exceed VLC's tolerance?16
i've been informed by my friend group that i'm the only person to consistently hit issues with not having the skill to do a project, go do other projects to gain the skills, then *come back* to the initial project.
how is this not a common thing2
literally everything, with infinite time to spare. (this is another reason why immortality sucks cock, btw)2
I've compiled enough recent news to point out some notable articles in a list:
- Windows 10 20H2 can corrupt the main filesystem on SSDs when ChkDisk is run under yet-unknown circumstances (https://borncity.com/win/2020/...)
- Nintendo updated SwapNote for 3DS well after killing it off (https://nintendolife.com/news/2020/...)
- Google has finally fully open-sourced Fuschia, its attempt to replace Android, you can now make PRs and such (https://computerweekly.com/blog/...)
- a recent Win10 update for normal users is causing massive speed issues (https://pcgamer.com/microsofts-dece...)
- Amazon's trying to compete with StarLink and it's going pretty okay (https://arstechnica.com/information...)
- Cyberpunk 2077 has a fuckton of fixes in a new update, for those who care (https://theverge.com/2020/12/...)
- Xbox 360-based Halo games are going to have their online component killed in December 2021, for those who care (https://halowaypoint.com/en-us/...)
i forget who said they liked these last time i did them but to that one person, here you are.16
alright well i'll see yall in 30 years when i finally qualify for this (despite "no degree needed" and "entry-level" tags being on the fucking job)4
i had a stupid idea that'd let me do a project i had planned and abandoned a while back after getting experience with the new project.
problem: detect and manage empty space in a massive file, allow adding data to those empty spaces from files, and fill in a table in a designated empty space with where dynamically-loaded things are. In Python.
I tried JUST detecting empty space, and Python would break out of loops for no reason at all just at random. "run bottom to top through this file until a non-00h byte is found" would either break out of the loop way earlier than should be possible (8 or 9 bytes into a 32KB empty file) or run way into non-zerofill areas before breaking the loop.
Am I just retarded? Is this more Python conditional fuckery? i'm so lost that it's just on hold for now (and i think i lost that script too)
This week's prompt implies most or all of us are "good" at programming, which... define the threshhold for this? Actually, before that, how do we QUANTIFY this?
also i'm shit at programming4
So, i've noticed something:
- My grandfather drinks nothing but the water.
- My grandmother recently increased her water intake due to meds making her retain water way less
- My dad has been drinking more water in an attempt to be healthier.
- I don't drink the house water without boiling it first, as i'm the only one that thinks it smells and tastes like wet dog smells, aside from with like kool-aid or similar where the taste is masked enough to not be detectable.
Well, what does this matter? I'll tell you:
- My grandfather went from fine aside from minor balance issues to totally mentally fried in 24 hours.
- My grandmother is spacing out while driving and falling more and more.
- My dad went from fine to overwhelmed by basic decisions in a couple months of moving here.
- I've noticed a slight decline in my mental health, but this is probably from issues i've had with my college and general stress.
Correlation ≠ causation, but... it's usually-unfiltered water from a well placed uncomfortably close to a lagoon, and it was never tested for safety before use (despite my protests.)19
my day went to shit immediately... long night, got to sleep at 4AM, poked awake at 8AM, "hey wake up we gotta go to a town 200 miles away, dress like you're rich, we gotta go find a place to live for my new job" ugh, fine, got another 30 minutes or so of sleep in the car. We get there, the guy shows us a place that I physically can't fully stand up in and is like 600-some square feet for $750/month. Fuck that. We get halfway back home, "hey i forgot, we just finished renovating a new unit, come look!" goddammit gotta go BACK to the city... get there, it's a 2-floor 1200 square foot place for $675, a hell of a lot better. We leave to go see relatives in town, get a call, "hey hurry home your grandfather's hallucinating" we get there before an ambulance (we traveled 120 miles in less time than an ambulance took to drive 50 miles...) and my grandfather's hauled (by us, as the ambulance refuses to take him to the right hospital, they want to take him OUT OF STATE in an ambulance and he's not actively dying) to the VA in the city we were just in... he's immediately screened and his dementia has progressed to the point he needs to be in a nursing home in 12 hours somehow. I have no idea either. Anyways, we're about 3/4 of the way back home and it's now 2:40AM. My dad's been driving for 18 hours pretty much straight. I'm still awake, he's wired (the worst possible state to be in while driving) and family drama has happened as family members are already trying to take the land my grandpa lived on AND HE'S LITERALLY ONLY BEEN GONE FOR 6 HOURS.
so how was your day?7
my new rig is more and more causing me issues:
- Ryzens fucking kill 9x and MS-DOS applications and the OSes themselves when they run unemulated, so they can't be run in a KVM. This makes them slow as shit, and in qemu-TCG's case, buggy as shit too. VMs can't reboot successfully, they have to be totally forced down and brought back up on TCG or they hang during the reboot. It also performs poorly. VERY poorly. The "shit runs full-speed like 65% of the time and it feels slow as fuck as video output is a stuttery blurry mess" type. This makes 2 projects problematic to complete and I have to remake 17 VMs in virt-manager now as vbox doesn't work with any virtualization method for a 9x/DOS guest now!
- For some reason my new RX 5500xt has an issue when it hits about 80% usage, the fans spin to 100% on it at 80% and taper off to like 5% when idle. Pretty standard stuff... except it's erroneously tied to... current load, not temperature. Hmm.
- Debian got an update that renames my ethernet device mid-boot. Up until just before the login screen, it's named "eth0". After that, it's named "enp8s0". This was hell to work around and idk why it does this.4
"all these high schoolers can't see others' active directories... but they're all RWX on the Students group all students are in. Also the up button shows everyone's ADs from any student's, but no one will ever press that!"
i dug up the undocmented fdisk thing and here it is https://youtu.be/th8wOjigxwU
on DOS 6.22 it just partitions it immediately, on Win98 it updates drive letters and immediately formats it as FAT32 if a partition is defined as being bigger than 2GB
syntax is as follows
FDISK <physical drive number, 0 being unused> /pri:<primary partition size> /ext:<extended partition size> /log:<logical partition size>