> ## Content Index
> Fetch the complete content index at: https://nolongerset.com/llms.txt
> Use this file to discover other available public pages before exploring further.

# twinBASIC Update: August 18, 2026
- URL: https://nolongerset.com/twinbasic-update-august-18-2026/
- Published: 2026-08-19T03:01:40.000Z
- Updated: 2026-08-19T03:01:40.000Z
- Description: Highlights include a progress update on the ongoing LLVM implementation, as well as sample projects showcasing webcam capture and a GDID monitoring utility.
- Author: Mike Wolfe
- Tags: twinBASIC Weekly Update

*On April 23, 2021, I helped* [*Wayne Phillips*](https://twitter.com/WaynePhillipsEA/) *introduce the world to* [*twinBASIC*](https://www.twinbasic.com/) *at the* [*Access DevCon Vienna*](https://www.donkarl.com/devcon/) *conference. I* [*boldly predicted*](https://nolongerset.com/devcon-2021/) *that twinBASIC (along with the Monaco editor) would replace VBA and its outdated development environment by 2025\. (And I was* [*oh so close*](https://www.youtube.com/watch?v=LCxfObwA7E8)*...) With that goal in mind, this weekly update is my attempt to keep the project fresh in the minds of the VBA development community.*

*Every ~~Sunday~~ ~~Monday~~ week, I will be providing updates on the status of the project, linking to new articles discussing twinBASIC, and generally trying to increase engagement with the project. If you come across items that should be included here, please leave a comment below.*

*Here are some links to get involved with the project:*

- [***Custom twinBASIC IDE Installation Guide***](https://nolongerset.com/how-to-install-twinbasic/)
- [*twinBASIC Discord Server*](https://discord.com/invite/UaW9GgKKuE) *(*[*chat about the project*](https://github.com/WaynePhillipsEA/twinbasic/discussions/629)*)*
- [*twinBASIC Documentation*](https://docs.twinbasic.com/) *(list of* [*new features*](https://docs.twinbasic.com/Features/) *not in VBx)*
- [*GitHub Issue Tracker (report bugs)*](https://github.com/WaynePhillipsEA/twinbasic/issues)

---

## Highlights

### LLVM Progress Update

---

**tl;dr*:*Wayne is targeting Friday, **September 4**, 2026, as the target release date for the next twinBASIC beta release, which is centered around compile-time optimizations via LLVM.

---

Here's the full exchange from Discord:

![](https://storage.ghost.io/c/eb/d7/ebd732c1-5f03-4f07-b386-5d08557e15c9/content/images/2026/08/image-11.png)

> \[**axisdj**\] out of curiosity what is the goal of the next release? LLVM only? Some hints would be very encouraging  
>  
> \[**fafalone**\] Should also include a lot of the work I've done. ListView ListSubItems and sorting, App object logging, Form.TopLevelWindow, .Point method, FontQuality property for everything, support CommandButton images when VisualStyles are on, ProgressBar caption and image, UserControl AsyncRead and related. Possibly RightToLeft on controls. A few other little things. I'm working on DDE (Link... properties/methods) but don't know if I'll finish before the big LLVM release.  
>  
> \[**WaynePhillipsEA**\] Yes, and I've been working on compiler/ide general memory reductions plus memory leak reductions whilst the LLVM work matures. **It's going to be a very substantial release!**  
>  
> \[**Glev**\] If it is not a automatic pseudo death penalty, may we have an updated estimated release date?  
>  
> \[**WaynePhillipsEA**\] I'm aiming for Friday 4th September now

## Discord Chat Summary

*\*Auto-generated via Claude Sonnet 5*

### Overview

This week centered on error-handling internals, VB6 control-legacy compatibility (MSComm32, AsyncRead, DDE), and firm news on the v1 release timeline. waynephillipsea confirmed a target ship date of September 4th alongside a substantial feature set, while fafalone detailed the deep bench of legacy control functionality landing in the next build. The community also spent considerable time reverse-engineering old ActiveX controls and discussing WinRT's async model.

#### Language Enhancements & Error Handling

- fafalone worked through how twinBASIC interprets Win32 error codes for `Err.ReturnHResult`, noting VB6 displays HRESULTs like `&H800A0005` as a short error number ("Runtime error 5") and that tB needs matching behavior when *raising* errors, not just receiving them.
- bclothier and fafalone compared edge cases around `Err.Raise 0` and `Err.Raise &H800A0000&`, with bclothier noting tB's handling was arguably "smarter" than VB6's silent failure.
- wqweto confirmed with waynephillipsea that a previously discussed `Err.Raise` bug is fixed for the upcoming release.
- fafalone flagged that passing `ByVal vbNullPtr` to ByRef arguments should ideally work for any ByRef parameter, not just UDTs; wqweto clarified current support, and fafalone noted Long should also be accepted since VB6 allows it.

#### v1 Release Roadmap

- **waynephillipsea** announced a target release date of **Friday, September 4th**, describing it as "going to be a very substantial release," fueled by ongoing compiler/IDE memory reduction and leak fixes running in parallel with LLVM maturation.
- **fafalone** outlined a large batch of his own contributions landing in the release: ListView ListSubItems/sorting, App object logging, `Form.TopLevelWindow`, `.Point` method, `FontQuality` property, CommandButton images with VisualStyles, ProgressBar caption/image support, and UserControl `AsyncRead`.
- RightToLeft support is complete for intrinsic controls, with Form/UserControl support still pending minor work.
- fafalone is currently implementing DDE (`Link*` properties/methods), citing continued corporate use and Office support as reasons for prioritizing it for v1 completeness, though it may not land before the LLVM release.

#### Legacy Control Compatibility

- fafalone confirmed UserControl `AsyncRead` (used for async file/byte-array/picture downloads, as seen in PhotoDemon's updater) is ready for public beta, adding pause/resume support beyond what VB6 offered.
- ADO support, previously a major pain point, was noted as added in a recent interim build (983) during ongoing LLVM work.
- twixydon reported that passing a `RECT` UDT through a custom event raises a runtime error despite no Diagnostics warning; deletedewd explained this stems from `IDispatch.Invoke` marshaling arguments as Variants, which can't hold UDTs, and suggested casting via `LongPtr`/`CType(Of RECT)` instead.
- fafalone confirmed VB6 has the same limitation unless the type is declared in a registered TLB, and agreed Diagnostics should ideally flag this case.

#### Community Archaeology: MSComm32 & VB6 Legacy

- wqweto discovered the community had been shipping an outdated MSComm32 build (6.0.8169) when a newer 6.1.9839 version exists.
- Several members (erice1234, camomille22003, jimdrew) shared sources and hex-editing tricks for extending MSComm32's 16-port limit and VBA's undo-history limit, pointing to archived Microsoft downloads as the most reliable source for the final MSComm32 build.
- wqweto noted that async serial port support on legacy Win8/XP machines still has no clean modern alternative in the VB ecosystem.

#### WinRT, Async & Platform Questions

- In response to a WPF question, deletedewd clarified WPF is exclusive to .NET Framework, but demonstrated how to consume WinRT's `SerialDevice` class in twinBASIC via `NewObject`.
- deletedewd explained WinRT's async pattern: operations run on the ThreadPool and marshal results back via a `Completed` handler on an `AsyncOperation(Of T)` object, contrasting with tB's current async maturity relative to VB.NET.
- alaskandruid confirmed Linux support remains on the official roadmap alongside macOS and Android.

#### Infrastructure

- glevz reported the tB package server was unreachable across betas 982 and 983; waynephillipsea confirmed it was a temporary outage and restored service shortly after.

### Conclusion

The week reinforced steady progress toward v1, with waynephillipsea's confirmed September 4th target and a hefty list of control-compatibility work from fafalone signaling a release focused on closing legacy gaps (DDE, AsyncRead, RightToLeft) alongside deeper compiler stability. Parallel community energy around MSComm32 archaeology and WinRT async patterns shows continued grassroots interest in bridging VB6-era tooling with modern twinBASIC capabilities. With core error-handling refinements also confirmed for the next build, momentum remains strong heading into the final pre-v1 stretch.

### 

## Around the Web

### Webcam capture w/ Media Foundation

Posted by fafalone in show-and-tell:

> .Someone had asked about capturing an image from a webcam (i think @movx ? can't find it)... and there's some existing solutions; a very complicated one from -Franky-, very outdated DirectShow vb6 examples, and VanGoghGaming's WinRT solution, that's well, WinRT 🤣  
> So with Claude's help I whipped up a simpler Media Foundation method. It's thread-safe, sending data back to the UI thread via PostMessage. Allows selecting a specific camera and supported resolution.

![](https://storage.ghost.io/c/eb/d7/ebd732c1-5f03-4f07-b386-5d08557e15c9/content/images/2026/08/image-10.png)

[GitHub - fafalone/WebcamCapMF: Using MediaFoundation to capture webcam stillsUsing MediaFoundation to capture webcam stills. Contribute to fafalone/WebcamCapMF development by creating an account on GitHub.![](https://storage.ghost.io/c/eb/d7/ebd732c1-5f03-4f07-b386-5d08557e15c9/content/images/icon/favicon-07846421-2a4b-412a-bda9-bb86edc03337.png)GitHubfafalone![](https://opengraph.githubassets.com/b0b1e19c6e733528ba6d1fe509be35384689b9728b9eb2ddee1a37d9debcde6f/fafalone/WebcamCapMF)](https://github.com/fafalone/WebcamCapMF)

### GDID Monitor

[Posted by **yereverluvinunclebert**](https://discord.com/channels/927638153546829845/1537460953627758674) in show-and-tell:

> A very small program in VB6/TwinBasic (nothing special) that allows you to view the GDID value and remove it if you want to stymie a point of tracking introduced by MicroSoft in Windows 10+. The program is very slimline, it can produce 32bit or 64bit binaries. For those that care a little about anonymity, a useful utility that can sit on your desktop and monitor/correct the GDID generation.  
>  
> You can find instructions here: <https://github.com/yereverluvinunclebert/GDID-Tester/blob/main/README.md>

![](https://storage.ghost.io/c/eb/d7/ebd732c1-5f03-4f07-b386-5d08557e15c9/content/images/2026/08/image-9.png)

[GitHub - yereverluvinunclebert/GDID-Tester: GDID Tester utility A small program in VB6/TwinBasic (nothing special) that allows you to view the GDID value and remove it if you want to stymie a point of tracking by MicroSoftGDID Tester utility A small program in VB6/TwinBasic (nothing special) that allows you to view the GDID value and remove it if you want to stymie a point of tracking by MicroSoft - yereverluvinuncl…![](https://storage.ghost.io/c/eb/d7/ebd732c1-5f03-4f07-b386-5d08557e15c9/content/images/icon/favicon-5df3303f-52e7-4432-87b0-6c00613c67be.png)GitHubyereverluvinunclebert![](https://storage.ghost.io/c/eb/d7/ebd732c1-5f03-4f07-b386-5d08557e15c9/content/images/thumbnail/GDID-Tester-c8f46dac-b17f-4a5c-bba1-718315fa3ee0)](https://github.com/yereverluvinunclebert/GDID-Tester/)

## Changelog

Here are the updates from the past week. You can also find this information by visiting the GitHub [twinBASIC Releases page](https://github.com/WaynePhillipsEA/twinbasic/releases).

[Releases · WaynePhillipsEA/twinbasicContribute to WaynePhillipsEA/twinbasic development by creating an account on GitHub.![](https://github.githubassets.com/favicons/favicon.svg)GitHubWaynePhillipsEA![](https://opengraph.githubassets.com/13bf5f13278e5633e644e312c6a75cfe0baf97f01dd45660573b36f5de0ee945/WaynePhillipsEA/twinbasic)](https://github.com/WaynePhillipsEA/twinbasic/releases)

- *No new releases this week.*
- *Next release is tentatively scheduled for September 4, 2026.*

###