ToughDev

Code. Crack. Create. Contribute

  • Blog
  • Software
  • Hardware
  • VoIP
  • Microcontroller
  • Radio/TV
  • Retro
  • Reviews
  • Highlights
  • Reverse-engineer
  • About

Win32 API

info2
Networking Popular Articles Software Development Vintage Computing Win32 API Windows Tips 

Super 8086 Box, my home-built PC XT emulator with Adlib, MPU-401, joystick and NE2000 support

August 15, 2023January 6, 2026 ToughDev 11 Comments 8086tiny, c++, dosbox, msdos

In 2019 I played with 8086 Tiny Plus v1.34, developed by Jaybert Software and improved from the original 8086 Tiny

Read more
vb30
CodeProject General Programming Software Development Vintage Computing Win32 API Windows Tips 

Open 16-bit Windows applications natively on 64-bit Windows using OTVDM/winevdm

September 30, 2021April 5, 2023 ToughDev 0 Comment borland C, otvdm, turbo c, widevdm

In my previous post I described how to run 16-bit DOS applications on 64-bit Windows using NTVDMx64. This post will

Read more
Win32 API 

Open a file with its default viewer using Windows API in C

March 19, 2009November 9, 2016 ToughDev 0 Comment

The following will open a file with its default viewer. The behaviour is exactly the same as what will happen

Read more
.NET Framework Win32 API 

Allow only digits in textbox

March 14, 2009 ToughDev 0 Comment

The following code apply ES_NUMBER to allow only digits to be typed into the edit control. Public Const GWL_STYLE As

Read more
Win32 API 

MessageBox with Help button

January 11, 2009 ToughDev 0 Comment

Showing a four-button message box with the default set to the fourth button: int WINAPI WinMain(HINSTANCE hinst, HINSTANCE hinstPrev, LPSTR

Read more
Win32 API 

Distinguish between different Windows versions

November 4, 2008 ToughDev 0 Comment

1. Check if Environment.OSVesion.Platform returns WIN32NT (for Win3.1, Win95, Win98, WinME) or WIN32Windows (for WinNT and later) or WinCE (for

Read more
Win32 API 

Kill a process given its executable name.

October 13, 2008 ToughDev 0 Comment

BOOL KillProcessByName(const TCHAR* p_strEXE) { printf(“Attempting to terminate “); OutputDebugString(p_strEXE); printf(“n”); HANDLE hSnapShot = NULL; PROCESSENTRY32 pEntry = {0}; //

Read more

About ToughDev

Since 2008, ToughDev has explored embedded systems, software development, reverse engineering, and retro computing, bridging legacy hardware with modern software.

Recent projects include the Super 8086 Box PC XT emulator, the dsMP3 embedded radio, and detailed teardowns of vintage PCs such as the Tandy 2500RSX.

I also write about voice, AI, and communication products from a technical user’s perspective. My recent first-impressions review of Talk Machine looks at its voice-first interface, email-based voice notes, transcript refinement, and natural speech output.

Beyond publishing technical research, ToughDev also provides consulting and custom development services in embedded systems, mobile applications, VoIP, microcontroller firmware, and integration with vintage or undocumented hardware platforms.

Contact Webmaster

Recent Comments

  • ToughDev on Super 8086 Box, my home-built PC XT emulator with Adlib, MPU-401, joystick and NE2000 support
  • Chris on Super 8086 Box, my home-built PC XT emulator with Adlib, MPU-401, joystick and NE2000 support
  • ToughDev on Super 8086 Box, my home-built PC XT emulator with Adlib, MPU-401, joystick and NE2000 support
  • Chris on Super 8086 Box, my home-built PC XT emulator with Adlib, MPU-401, joystick and NE2000 support
  • ToughDev on Super 8086 Box, my home-built PC XT emulator with Adlib, MPU-401, joystick and NE2000 support
  • Gianni on Super 8086 Box, my home-built PC XT emulator with Adlib, MPU-401, joystick and NE2000 support
  • Jan de Lange on Internet access from Pocket 386 retro laptop using Wemos D1 ESP8266 serial Wifi adapter
  • ToughDev on Internet access from Pocket 386 retro laptop using Wemos D1 ESP8266 serial Wifi adapter
  • ToughDev on Emulating EEPROM using flash memory on dsPIC33EP512MC502
  • Jan de Lange on Internet access from Pocket 386 retro laptop using Wemos D1 ESP8266 serial Wifi adapter
  • Jonathan on Emulating EEPROM using flash memory on dsPIC33EP512MC502
  • Jan de Lange on Internet access from Pocket 386 retro laptop using Wemos D1 ESP8266 serial Wifi adapter
  • ToughDev on Compaq Contura 3/25C 80386 Laptop
  • ToughDev on Internet access from Pocket 386 retro laptop using Wemos D1 ESP8266 serial Wifi adapter
  • Jan de Lange on Compaq Contura 3/25C 80386 Laptop
  • Jan de Lange on Internet access from Pocket 386 retro laptop using Wemos D1 ESP8266 serial Wifi adapter
  • ToughDev on Internet access from Pocket 386 retro laptop using Wemos D1 ESP8266 serial Wifi adapter
  • Jan de Lange on Internet access from Pocket 386 retro laptop using Wemos D1 ESP8266 serial Wifi adapter
  • SafeeDeen on dsMP3, my LW/MW/FM/SW radio with MP3 recording/playback [Part 1 – Hardware Design]
  • Dr. Sanjeev Saxena on dsMP3, my LW/MW/FM/SW radio with MP3 recording/playback [Part 2 – Firmware Design]
Follow @mrtoughdev

Tags

3cx 68k 80386 adlib amiga c++ cctv ch375 ch376 commodore data recovery deskmate dosbox dspic embedded ffmpeg iOS macintosh macintosh se mac os microsoft office mini pc ms dos natural language processing printer qemu radio raspberry pi retro68 rf rtsp scsi2sd tecsun turbo c turbo pascal ubuntu virtualbox wifi windows windows 11 windows 98 WordPress word processor xCode z80

Archives

  • 2026 (8)
  • 2025 (12)
  • 2024 (12)
  • 2023 (14)
  • 2022 (12)
  • 2021 (12)
  • 2020 (12)
  • 2019 (12)
  • 2018 (13)
  • 2017 (12)
  • 2016 (13)
  • 2015 (29)
  • 2014 (17)
  • 2013 (16)
  • 2012 (12)
  • 2011 (16)
  • 2010 (30)
  • 2009 (53)
  • 2008 (53)

Featured

Mobile Development
VoIP
Macintosh 68k
Logic Analyzer
Microcontroller
Oscilloscope
Radio/TV
Reverse-engineer

Tools

Site Admin
Entries RSS
Comments RSS
Contact Webmaster
Copyright © 2026 ToughDev. All rights reserved.
Theme: ColorMag by ThemeGrill. Powered by WordPress.