Hello, Assembly! Retrocoding the World's Smallest Windows App in x86 ASM
Dave builds the World's Smallest Windows application live in x86 assembly using only a text editor and the command line to assemble the program using the Microsoft MASM assembler.
Whether you're a professional programmer or just curious about how assembly language works, what makes it different from machine language, and why it can be faster and smaller than C you won't want to miss it! Take your Windows Programming to the next level. Or the previous level, depending on how you look at it!
Link to Mug:
https://daves-garage-store.creator-spring.com/listing/new-dave-s-garage-logo-mug
Link to Code:
https://pastebin.com/Pmvr4r1S
Thanks in part to a suggestion by 'SonicMouse' that I merge linker sections, the current binary size is 1488 bytes... and yes, it runs exactly the same.
0:00 Start
1:31 Assembly Language vs Machine Language
2:24 Machine Language Monitors
3:22 Hello, Windows!
5:10 Dave's Garage Mug
5:30 Task Manager Enamel Pins
6:04 Editor Sequence Start
10:15 Includes, Libs, Constants, Data
12:00 Main Entry
13:30 ShowWindow
15:11 WinMain
17:10 WindowClass
21:37 WndProc
26:15 Command Line
28:08 Running the App
28:30 Closing Thoughts
Environment: Windows 10 2H02, MacOS 11.2.2
GNU Nano Editor
Microsoft MASM SDK
PS: For anyone keeping score, two things are certain: (a) it can always be smaller, and I'm down to 1488 bytes now, and (b) Steve Gibson has likely forgotten as much about x86 assembly programming as I know :-). Thanks for the recent shoutout on the podcast!
I realize you can make a much smaller app by simply calling MessageBox, but that's why I outlined what I deem to be the "minimum functionality". SonicMouse has come the closest so far at 1776!
Видео Hello, Assembly! Retrocoding the World's Smallest Windows App in x86 ASM канала Dave's Garage
Whether you're a professional programmer or just curious about how assembly language works, what makes it different from machine language, and why it can be faster and smaller than C you won't want to miss it! Take your Windows Programming to the next level. Or the previous level, depending on how you look at it!
Link to Mug:
https://daves-garage-store.creator-spring.com/listing/new-dave-s-garage-logo-mug
Link to Code:
https://pastebin.com/Pmvr4r1S
Thanks in part to a suggestion by 'SonicMouse' that I merge linker sections, the current binary size is 1488 bytes... and yes, it runs exactly the same.
0:00 Start
1:31 Assembly Language vs Machine Language
2:24 Machine Language Monitors
3:22 Hello, Windows!
5:10 Dave's Garage Mug
5:30 Task Manager Enamel Pins
6:04 Editor Sequence Start
10:15 Includes, Libs, Constants, Data
12:00 Main Entry
13:30 ShowWindow
15:11 WinMain
17:10 WindowClass
21:37 WndProc
26:15 Command Line
28:08 Running the App
28:30 Closing Thoughts
Environment: Windows 10 2H02, MacOS 11.2.2
GNU Nano Editor
Microsoft MASM SDK
PS: For anyone keeping score, two things are certain: (a) it can always be smaller, and I'm down to 1488 bytes now, and (b) Steve Gibson has likely forgotten as much about x86 assembly programming as I know :-). Thanks for the recent shoutout on the podcast!
I realize you can make a much smaller app by simply calling MessageBox, but that's why I outlined what I deem to be the "minimum functionality". SonicMouse has come the closest so far at 1776!
Видео Hello, Assembly! Retrocoding the World's Smallest Windows App in x86 ASM канала Dave's Garage
Показать
Комментарии отсутствуют
Информация о видео
Другие видео канала
Assembly Language MisconceptionsHow does a USB keyboard work?Hello, Windows! RetroCoding "Hello World" for Windows with DaveMy 90s Life at Microsoft: Task Manager, ZIPFolders, Space Cadet Pinball and More - Dave PlummerE00: Software Drag Racing: C++ vs C# vs Python - Which Will Win?Why Does Rebooting Fix Everything? Ask a Microsoft Engineer!Why Are Windows Blue Screens Blue? Find out!HomeLab and Shop Tour! 100K Subscriber Extravaganza!45 Computer Languages Compared: Which is FASTEST?Can you fit an Entire Windows App inside a QRCode?The Secret Life of Microsoft Interns - by Davepl41 Unexpected Minecraft Build HacksC# vs Java: Which is Faster? Computer Language Drag Racing Series E03The Day Microsoft Campus Crashed - Bedlam at Microsoft!What Is Assembly Language?01-Learn Arduino Tutorial Project - Beginner DIY First Steps with an RGB LED - Tiki Fire UmbrellaAssembly: the Atomic Fire Lamp in Dave's GarageLinux vs Windows Round 1: Open Source vs Proprietary - From a Retired Microsoft DevHow Machine Language Works