Posts Tagged ‘1’
Posted by jpluimers on 2025/08/22
I got the below error when booting a Dell Optiplex 7060 Micro, a machine not just supporting supporting UEFI but preferring it, on which I had copied a backed-up disk image, then moved the hidden Recovery partition to the end of the physical disk (to make room to extend either the OS or DATA partitions).
Fixing it lead me to a trip that was on the boundary of software archaeology, so this blog post has a truckload of archived links to information that is still relevant, but for which the original links have long vanished due to link rot or (often worse) part of the historic information got lost because of migration to new tooling forgot to cover important additions (especially in comments).
One thing that I had to unlearn was MBR disk basics, for instance the fact that on GPT disks a partition can be active (they can only be on MBR disks, but despite UEFI supporting both MBT and GPT, GPT disks are way more common and required). The same holds for partitions having a boot flag: that too only applies to MBR disks. For the same reason, bootrec is only useful for MBR disks. More details towards the end of this blog post. CSM (Compatibility Support Module) booting is the UEFI way to simulate BIOS boot for operating systems that do no support UEFI.
Back to the error at hand:
Read the rest of this entry »
Posted in Development, History, link rot, Power User, Software Archeology, Software Development, Windows, Windows 10, Windows 11, Windows Server 2003, Windows Server 2008, Windows Vista, Windows XP, WWW - the World Wide Web of information | Tagged: 1 | Leave a Comment »
Posted by jpluimers on 2025/06/25
The manual process of getting back to the earliest commit of a GitHub repository is easy for small repositories, but for a large one it is very tedious.
TL;DR: there are various ways, but the easiest was the INIT Bookmarklet below.
Note: 2 weeks before the scheduled post made it to the front of the queue, I got a report¹ that it started to fail. Here it still works.
It’s hard to debug because of the functional programming approach taken.
Read the rest of this entry »
Posted in Bookmarklet, C, Conference Topics, Conferences, Development, DVCS - Distributed Version Control, Event, git, GitHub, Go (golang), JavaScript/ECMAScript, Power User, Scripting, Software Development, Source Code Management, Web Browsers | Tagged: 1, 18, 7 | Leave a Comment »
Posted by jpluimers on 2025/05/12
Posted in LifeHacker, Power User, Solar Power | Tagged: 1, 2, 3, 4, 5, 6, 7 | Leave a Comment »
Posted by jpluimers on 2025/05/07
The people knowing about the really early Pascal history are a dying breed. So before I pass away (see the posts on my rectum cancer), let me post a few more links here that based on yesterday’s Trip down memory lane: book on p-Code based UCSD Pascal which I ended with:
I learned a few more things from [Wayback/Archive] What do you think about something like Pascal bytecode? (Page 2)
Here we go:
Read the rest of this entry »
Posted in archive.is / archive.today, Conference Topics, Conferences, Development, DVCS - Distributed Version Control, Event, gist, GitHub, Internet, InternetArchive, LISP, Pascal, Power User, Software Development, Source Code Management, Standard Pascal, UCSD Pascal, WayBack machine | Tagged: 1, 11, 12, 13, 14, 15, 16, 17, 18, 19, 2, 20, 21, 22, 23a, 24, 25, 26, 27, 3, 4, 5, 6, 7, 8, 9 | Leave a Comment »
Posted by jpluimers on 2025/04/10
Over the last years a few C:\Windows.msi vulnerabilities have been discovered (and fixed), of which some are linked below.
The core is that the Windows Installer tries to be transactional, and NTFS is, but the combination with installer processes isn’t.
That leads into vulnerabilities where you can insert malicious Roll Back Scripts (.rbs files) and Roll Back Files (.rbf files), and I wonder if by now more have been discovered.
So this post is a kind of reminder to myself (:
Oh, and I learned much more about whoami on Windows, as there whoami /groups shows very detailed SID information. From that, I learned more on the internals of SIDs too!
Read the rest of this entry »
Posted in Blue team, C++, Development, Power User, Red team, Security, Software Development, Visual Studio C++, Windows, Windows Development | Tagged: 1, else, endif, if | Leave a Comment »
Posted by jpluimers on 2025/03/27
It has been a very long time since I played around with ripping audio from audio CDs and wrote software for audio handling. I lost access to that source code some 20 years ago, so part of this post is from memory. Hopefully that is still good memory (:
Yes, I am one of those old farts that still has computing equipment with optical drives (:
Much has improved since then, so one needs to write far less code nowadays as a of tooling is now open source or has been open source for quite some time. The hardest part was finding back CDex (which I think is still very useful especially as it handles not-so-well-handled audio CDs quite OK).
Anyway: I didn’t document much of my audio history. The only post I mentioned CDex in was Streaming your mp3 collection through an Icecast server using ezstream, which does not does it justice as back then it had been reliable for such a long time.
Funeral web-site
That web-site was horrible, especially as it was picky on audio formats. In the end, it handled 128-bit fixed bit-rate MP3 files best.
CDEX
Read the rest of this entry »
Posted in Audacity, Audio, Development, Media, Normalisation of audio, Power User, Software Development | Tagged: 1 | Leave a Comment »
Posted by jpluimers on 2025/01/01
I wrote a two earlier blog posts around puns in programming book indices before:
- the 1992 Turbo Pascal 7.0 Language Guide having both entry in the manual about Recursion (“recursive loop, see recursive loop”) which of course is similar to “infinite loop” and entries for “infinite loop See loop, infinite” and “loop, infinite See infinite loop”.
- infinite loop in “LaTeX: A Document Preparation System” by Leslie Lamport, printed in 1994.
In the last one, I promised to list more occurrences which I now finally had time for to do.
But let me first elaborate more on the observation that modern computer books (like for instance on C# and Delphi beyond version 1) lack these kinds of index pun.
On the Delphi side, the index entry joke for recursion got removed no later than Delphi 3 (I am still looking for a Delphi 2 version of the Object Pascal Language Guide, see further below) even before the book being fully redone electronically and the index pages generation being automated in
I think I even understand why that is: the process of creating of indices. By the start of this century, more and more indices were automatically being generated and for the last 2 decades or so, all of them are. Back in the days however, indices were mostly done by hand. Nowadays, with everything automated, it is actually pretty tricky in most environments to add such an “infinite loop” index entry like in the Turbo Pascal book, as it would require two things at once:
Read the rest of this entry »
Posted in .NET, C, C#, C++, Conference Topics, Conferences, Delphi, Delphi 1, Delphi 2, Development, EKON, Event, History, LaTeX, LifeHacker, LISP, Mathematics, Pascal, Perl, PL/I (a.k.a. PL/1), Power User, science, Software Development, Turbo Pascal, Typesetting | Tagged: 1, 7 | 4 Comments »
Posted by jpluimers on 2024/09/27
This is why I do not trust ordering via QR-code: you never know how good (or usually bad, often even non-existent) their security is.
[Wayback/Archive] What’s inside the QR code menu at this cafe? – by peabee is a really bad example about Google backed DotPe: they have zero-auth and by now have rated limited API access by IP address.
…
I went to a cafe near my home. I sat down and scanned the QR code on the table. It took me to a website displaying the cafe’s menu. It asked me for my name and Whatsapp mobile number. I entered the details and placed the order.
In 5 mins my order arrived at the table. There was no OTP verification, and no one came to confirm the order. Is this what the peak ordering experience looks like?
It was a slow workday, and I thought I might as well open this QR code website on my laptop and have a quick look under the hood. Maybe I should’ve just made my own coffee and stayed home because I didn’t realize I was opening a can of worms.
…
This kind of zero-auth is not infrequent: the Panels API and CDN were wide-open too: [Wayback/Archive] https://storage.googleapis.com/panels-api/data/20240916/media-1a-i-p~s
Read the rest of this entry »
Posted in Authentication, Development, Infosec (Information Security), LifeHacker, Phishing, Power User, Security, Software Development | Tagged: 1 | Leave a Comment »
Posted by jpluimers on 2015/04/15
- It has CHM help. Yay! The best new feature in XE8 can be seen by pressing F1. Oh, how did I miss a….
- GetIt is cool. Not NuGet level yet, but a good start. Is there any way to change the default GetIt URL for the Rest API….
- App Analytics is nice. Finally someone listened to Why Software Sucks by David S Platt and introduced some measurement.
- You need to pay for hotfixes. From the FAQ: Can I obtain updates and hotfixes without a subscription? An….
- This is causing some stir. Hello! I tried to add a new XE8 to the cart (I don’t actually have the money….
- Still ambivalent to VCS support in the IDE, but there are now Git Integration enhancements in RAD Studio XE8.
- Always install the full RAD studio; installing only limited personalities forgets a file: Do you have lib\iOSDevice64\Release\libsqlite.a in your XE8 installation? Or….
- Generics and arrays are slower. FireDAC has some incompatibilities: XE8 Findings Found some minor tweaks in XE8. Will add to this post as I find….
- Sort of transcript of the XE8 webinar: The Embarcadero webinar for what’s new in XE8 will start in about a minute.….
- Maybe Delphi apps become less design centric and easier to maintain:
- F0248 error sometimes means you wrote invalid code: Porting from XE7 to XE8: Internal Compiler Error F2048 using a interface in a….
- DBField optimisations can make your data centric apps a lot faster: Happy about DBField optimization in XE8 … This leads to a 25% performance….
{$IF defined(MSWINDOWS) and not defined(NEXTGEN)} – XE8 first impressions Installed RadStudio XE8 (Pro) last night and these are….
- If they’d documented the #1 as being Unicode U+0001 START OF HEADING it would have made this much more clear: are you kidding me ? for years Embarcadero says that String is not a place to….
- Spring4D 1.2 will introduce the WeakReference type that does all that. Igor Belyh – Google+.
- Better disable Castalia for now. Anyone knows how to disable castalia in XE8? A lot of errors, IDE becomes….
- wuppdi·StylerXE8 tool for XE8 – Get rid of the wrong font size and blue toolbar | Andy’s Blog and Tools.
- DCU patches to get Byte-Strings for XE8’s mobile compilers | Andy’s Blog and Tools.
- TerraData connection is called TData. Good that FireDAC and IBX support ChangeViews. Database updates in Delphi XE8 & C++ Builder XE8.
- Nice Blog post “What’s New in Delphi XE8 for VCL developers” at….
- Not all “Work-as-Expected” resolutions actually fix the problem: Can someone please check if following issues still exist in XE8. JSON….
- No torrents, though publishing these with good SHA-1 hashes could make downloads a lot faster. Delphi Insider: Download Links for Delphi XE8, RAD Studio XE8 and C++Builder XE8.
- FMX Application termination doesn’t fully terminate… I’ve just noticed that IFMXApplicationService.Terminate doesn’t….
- Interface and Generic Class Helper support for Delphi are still wanted.
- Few memory leaks fixed when compiling large projects so the people having Very very annoying, XE7 is unusable! Out of memory, exceptions, very slow, etc.… need to wait longer.
- Castalia in XE8 does less than the full version for XE7 so What exactly are features in Castalia better than those in CnPack? but be careful: in XE8, CnPack 1.0.6.705 can bite Castalia: I have installed XE8 Trial ver. When starting XE8 I get an AV in….
- XE8 fixes the const string folding introduced in XE7: Is it already known that the XE7 Delphi compiler doesn’t collapse duplicate….
- REST.JSON (JsonObject) now breaks on Generic Lists with an
EConversionError ‘Internal: Type tkPointer is not currently supported’: it seems in the DataSnap XE 8 transfer of TList class crashed, the problem….
Components and tools that work with XE8:
Appmethod
--jeroen
Posted in Castalia, Delphi, Delphi XE8, Development, Software Development | Tagged: 1, Delphi, UniDAC, XE8 | 3 Comments »