The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,854 other subscribers

TFreedObject in FastMM4/FastMM4.pas at master · pleriche/FastMM4 · GitHub

Posted by jpluimers on 2020/01/08

Reminder to Self:

  {The class used to catch attempts to execute a virtual method of a freed
   object}
  TFreedObject = class
  public
    procedure GetVirtualMethodIndex;
    procedure VirtualMethodError;
{$ifdef CatchUseOfFreedInterfaces}
    procedure InterfaceError;
{$endif}
  end;

If you encounter the class TFreedObject when doing a cast, then you’re working on a freed object and have FastMM4 enabled to detect that.

Source: [WayBackFastMM4/FastMM4.pas at master · pleriche/FastMM4 · GitHub; FastMM4 – A memory manager for Delphi and C++ Builder with powerful debugging facilities

Note that if you want to see the underlying FastMM data for any TObject allocation, use this watch (where Self is the current instance):

PFullDebugBlockHeader(PByte(Self) - SizeOf(TFullDebugBlockHeader))^

You can also put a ,r behind it to see the fields of this structure:

(Reserved1:nil; Reserved2:nil; AllocatedByRoutine:$41BF74; AllocationGroup:0; 
AllocationNumber:592682; 
AllocationStackTrace:(4224198, 4233131, 4235210, 11103806, 6552132, 131126, 6597961, 11106984, 4235210, 11107153, 11104090); 
AllocatedByThread:90428; FreedByThread:90428; 
FreeStackTrace:(4241541, 131126, 4235210, 11103806, 6552132, 131126, 6597961, 11106984, 4235210, 11107153, 11104090); 
UserSize:36; PreviouslyUsedByClass:132272; HeaderCheckSum:2673350594)

–jeroen

Posted in Conference Topics, Conferences, Delphi, Development, Event, Software Development | Leave a Comment »

Crosscompiling with Lazarus 1.8 on Linux Mint 18.3 | The Programming Works

Posted by jpluimers on 2020/01/08

As I will likely need this one day: [Archive.is / WayBackCrosscompiling with Lazarus 1.8 on Linux Mint 18.3 | The Programming Works.

There are quite a few one-time manual setups to initially set this up, but after that it’s a piece of cake.

via:

–jeroen

Read the rest of this entry »

Posted in Development, FreePascal, Lazarus, Pascal, Software Development | Leave a Comment »

Mads Kristensen on Twitter: “Visual Studio Tip: A blue dot in the margin indicates a switch of threads while stepping through debugging. #vstip… “

Posted by jpluimers on 2020/01/07

[WayBack] Mads Kristensen on Twitter: “Visual Studio Tip: A blue dot in the margin indicates a switch of threads while stepping through debugging. #vstip… “

–jeroen

Read the rest of this entry »

Posted in .NET, Development, Software Development, Visual Studio and tools | Leave a Comment »

Use PiServer to easily set up a network of client Raspberry Pi clients connected to a single x86-based server via Ethernet.

Posted by jpluimers on 2020/01/07

On my list of things to try:

PiServer is our new piece of software that makes it easy to create a network of Pis you can centrally control — ideal for your computing classroom or club!

Source: [WayBack] The Raspberry Pi PiServer tool – Raspberry Pi

Via: [WayBack] Use PiServer to easily set up a network of client Raspberry Pis connected to a single x86-based server via Ethernet. With PiServer, you don’t need SD card… – Raspberry Pi – Google+

–jeroen

Posted in Development, Hardware Development, Hardware Interfacing, Raspberry Pi | Leave a Comment »

VCL FadingEffect by Paul Toth at GitHub

Posted by jpluimers on 2020/01/07

In case I ever need a fading effect between 2 panels on one form, there is some code that will get me started.

I’d probably code it in a different design (without a global variable), but it works so can be a good source of ideas.

Source: Delphi/FadingEffect at master · tothpaul/Delphi · GitHub

Via: [WayBack] VCL Tiny demo of a Fading effect for Delphi Tokyo  – Paul TOTH – Google+

–jeroen

Read the rest of this entry »

Posted in Delphi, Development, Software Development | Leave a Comment »

samsung “software update” “this function is not available” – Google Search

Posted by jpluimers on 2020/01/06

When you get this on a TV from samsung “software update” “this function is not available” – Google Search, then usually you try to update the software when it is not in “watch TV” mode, but a different mode using the network (like web browsing).

See the photos below.

–jeroen

Read the rest of this entry »

Posted in LifeHacker, Power User | Leave a Comment »

Reminder to check out the Pascal source code for Apple’s legendary Lisa operating system

Posted by jpluimers on 2020/01/06

This is a reminder to check when the source code was actually released:

–jeroen

Posted in 6502, Apple, Classic Macintosh, History, Power User | Leave a Comment »

The Throttle homepage. Slow that machine down!

Posted by jpluimers on 2020/01/06

Cool tool if you have industrial machinery that uses DOS and needs a slowdown on modern hardware (because for instance your serial communications program is running way too fast): [WayBackThe Throttle homepage. Slow that machine down!

Via Matthijs ter Woord

Downloads:

  • Q) How does throttle work?
  • A) Throttle enables power management bits in the chipset to control CPU clock. Any chipset that conforms to the ACPI (advanced configuration and power interface) specification has a means to enable and control the throttle.
    The intended purpose of these bits is to provide a means of power savings, typically utilized in notebooks or other battery powered devices.
    When the CPU is in a throttled state, it uses less power. It just so happens that a throttled CPU creates a perfect environment to emulate the performance of an older generation CPU!
  • Q) I have a chipset that supports ACPI. Why isn’t it supported in throttle?
  • A) Probably because I don’t know about it. Because the ACPI specification can be implemented in different ways by different chipset manufacturers, it’s impossible to create one generic program that works with all ACPI compliant hardware. This creates the problem of constantly updating the internal database of known hardware. So far, the biggest problem has been finding the documentation for known ACPI compliant chipsets. Adding support for them is the easy part! You may also be using an older version of throttle. Contact me for the latest.
  • Q) Can I have more speed options than just the 8 (or 16) provided?
  • A) No. Throttle provides you with as many different CPU throttling options as the chipset allows. The ACPI spec only defines 8 different modes, each one 12.5% more throttled than the previous. VIA technologies has taken the spec 1 step further and allowed for throttling on 6.25% increments, thus doubling the amount of options available, which provides for more slowdown and a finer tunability.
    If you want to run oldskool games, get a VIA motherboard!There’s nothing I can do to change the available options, and no further options will be available unless the ACPI spec changes.

–jeroen

Posted in History, MS-DOS, Power User | Leave a Comment »

Im memoriam: Rudy Velthuis

Posted by jpluimers on 2020/01/05

Given that I’m fighting rectal cancer and am extremely low on energy, I am keeping this much shorter than I want to.

Recently, I learned that Rudy Velthuis passed away on 2019-05-13. Born on 1960-10-30, he passed away at only age 58.

After asking permission from his family, I wrote a small im memoriam.

We frequently encountered each other on-line in the Delphi community, especially in the early days when I was way more active on forums, newsgroups and chat channels. He was famous there, with good reason.

Though colloquially known as [WayBack“dentist with a strong interest in programming”, he was a great Delphi programmer and very well known for thoroughly documenting the many gaps that Embarcadero left in their documentation.

In 2009, Edwin van der Kraan and I had an opportunity to have dinner with Rudy. We met at his house, where we learned he not only ran a fully fledged dentistry practice, but also was married someone who origilally was from the Philippines. A truly happy couple they were.

In retrospect, I wish we had had met in real life more often, but I’m learning the hard way that life is finite giving you only so much time to do things.

I will remember Rudy because of his knowledge, wit and odd – but great – combination of work and interests.

In the mean time, I have asked a few archival organisations (including the WayBack machine) to archive his sites:

Some of his profiles that I archived on 20190103:

I love the “Kraftwerk – Autobahn” picture on his Stack Overflow profile page, so I included that song below the fold.

Related:

–jeroen

Read the rest of this entry »

Posted in About, Delphi, Development, History, Personal, Software Development | 4 Comments »

Brilliant device: iPazzPort Wireless Mini Handheld Keyboard with Touchpad Mouse Combo for Android TV Box and Raspberry Pi 3 and HTPC and XBMC KP-810-19S – Black: Computers & Accessories

Posted by jpluimers on 2020/01/03

Brilliant device: [WayBack] KP-810-19BTT Mini Bluetooth Keyboard with touchpad – Unisen Group iPazzPort

I got it via Amazon USA ([WayBack] iPazzPort Wireless Mini Handheld Keyboard with Touchpad Mouse Combo for Android TV Box and Raspberry Pi 3 and HTPC and XBMC KP-810-19S – Black: Computers & Accessories), but Amazon in Europe has it as well (this is the German link:[Archive.isiPazzPort Mini Wireless Handheld Tastatur mit Touchpad: AmazonSmile: Computer & Zubehör; replace .de with .fr, .co.uk, to find your local link).

There are this one is 2.4 Ghz, includes a USB dongle in the battery compartment and requires 2 AAA batteries.

There are Bluetooth and back-lit versions too which cost slightly more.

Via: [WayBack] Raspberry Pi Cluster – Software Team Lead

–jeroen

Posted in Development, Hardware Interfacing, Keyboards and Keyboard Shortcuts, Power User, USB | Leave a Comment »