PBXB64 V4 RELEASE
PBXB64 ist ein nativer Windows-Compiler, geschrieben in reinem C17. Fünf Sprachen — B64, BASIC, C, ASM, PILOT — laufen über eine einzige IR-Pipeline und einen x64-Backend zu nativem PE32+. Kein GCC, kein LLVM, keine externe Toolchain. Direkte x64-Instruction-Selection, eigener Assembler, eigener COFF/PE-Linker. FOR/NEXT vollständig für alle 7 Integer-Typen plus Float. 318/318 Tests grün, signiertes Build, UPX-gepackt auf ~856 KB.
Paket: ~8.9 MB (ZIP) — Compiler, CHM, 1233 .pbi Includes, 127 Samples
Digital signiert von Theo Gottwald
318/318 Tests bestanden
Test-Lane: Was grün ist
Das vollständige PBXB64-Build wird von einer automatisierten Test-Suite begleitet, die Assembly-Erzeugung, Linker-Auflösung und Runtime-Korrektheit für jede Sprache und jedes Feature prüft.
Warum PBXB64?
Echter nativer x64-Code
Keine Abhängigkeit von GCC, LLVM oder einer C-Runtime. Der Compiler erzeugt direkt x64-Maschinencodes – vom PowerBASIC- oder B64-Quelltext zur ausführbaren PE32+-Datei in einem einzigen Durchlauf. Maximale Kontrolle, minimale Binary-Größe, keine Überraschungen durch Drittanbieter-Toolchains.
Multi-Frontend: 5 Sprachen
Schreibe Code in B64, PowerBASIC, C (C17-Subset), PILOT oder direktem x64-Assembler – alles im selben Projekt. Der Compiler mischt die Sprachen auf IR-Ebene und erzeugt eine gemeinsame PE. Eine neue Sprache hinzufügen und der gesamte native Backend steht sofort zur Verfügung.
Eigener x64-Backend
Direkte Instruction-Selection, Register-Allokation, Peephole-Optimierung und PE32+ Image-Generierung — geschrieben in C17. Der gesamte Backend umfasst ~14.000 Zeilen in core/source/backend/x64/ plus eine ~5.000-Zeilen native x64-Assembler-Encoder. Keine externen Abhängigkeiten, keine Überraschungen.
Eigener PE32+-Linker
Kein externer Linker nötig. Der integrierte Linker verarbeitet COFF-Objekte, generiert Import-Tabellen, Reloc-Sektionen, TLS- und Exception-Daten. Volle PE32+-Kompatibilität mit Windows XP bis Windows 11.
Sprach-Frontends im Detail
B64 (.b64)
C-ähnliche Systemsprache mit manueller Speicherverwaltung, rohen Pointern, Structs, Funktionspointern und globalen Variablen. Primäres Frontend — Systemcode mit derselben Pipeline kompilieren, die auch BASIC und PILOT verarbeitet. 13/13 Link+Run-Tests grün.
PowerBASIC (.pb, .bas)
PowerBASIC-kompatibler Dialekt: FUNCTION/SUB, LOCAL/GLOBAL/SHARED, TYPE/UNION/ENUM, vollständige FOR/NEXT-Semantik für alle Integer- und Float-Typen, negativer STEP, geschachtelte Schleifen. 20/20 Link+Run-Tests grün.
C (.c, .h)
C17-Subset: #include, #define, #if/#ifdef/#endif, vollständige Lexer/Parser, struct/union/typedef/enum, switch/case, function pointers. 33 C17-Header-Dateien mitgeliefert. 63/63 Compile-Tests + 1/1 Link+Run-Test grün.
Inline-Assembly (.asm, .s)
Direkter x64-Assembler mit Intel- und AT&T-Syntax. Native COFF/PE-Emission ohne Umweg über eine Zwischensprache. Volle Kontrolle über Register, SSE und System-Calls.
PILOT (.pil)
Bildungsorientierte Sprache. Vollständige T:/A:/M:/Y:/N:/J:/U:/E:-Befehle, bedingte Suffixe, Pattern Matching. Ideal für Lehre und einfache Skripte.
Mixed-Language-Projekte
PowerBASIC + Inline-ASM im selben Modul. B64 ruft C-Funktionen. PILOT steuert ein C-Programm. Der gemeinsame IR-Layer macht’s möglich.
Quick Examples
B64
PowerBASIC
C
V4 Highlights — FOR/NEXT Coverage
V4 löst das langjährige "FOR-Body constant-fold" Problem und fügt vollständige FOR/NEXT-Typabdeckung pro PB-Spezifikation hinzu. Float-FOR wurde in Z62 vollständig debuggt und läuft jetzt zuverlässig.
| Kategorie | Details |
|---|---|
| Integer FOR | 7 intlike Typen (LONG, INTEGER, QUAD, DWORD, WORD, BYTE, CURRENCY) — positiv und negativ STEP |
| Float FOR | SINGLE, DOUBLE — FOR f = 1.0 TO 3.0 — vollständig debuggt in Z62 |
| Nested Loops | 2-deep, 3-deep, mit abhängigen Bounds FOR j = 1 TO i |
| Backend-Korrektheit | SSE movq ModRM, SSE-arith ModRM, peephole pass 4 imm64-Truncation, SETCC partial-write, peephole dead-reg, PB Frontend slot-float const-fold — alle 5 gefixt |
Architektur — From Source to Silicon
Build & Run
Build (Windows + MinGW)
Compile a PB program
Compile a B64 program
Compile a C program
Was ist im ZIP-Paket?
| Datei / Ordner | Inhalt |
|---|---|
PBXB64.exe | 856 KB UPX-gepackter Compiler, digital signiert (Theo Gottwald) |
PBXB64_Help.chm | Kompilierte Windows-Hilfe mit Befehlsreferenz |
README.md | Release-Notes, Lizenz, Kontakt |
SHA256.txt | SHA-256-Hashes für Integritätsprüfung |
Includes/ | 1233 PB-Include-Dateien (.pbi) für Windows-API, JSON, HTTP, OAuth, SMTP, COM, NetX, u.v.m. |
Samples/ | 127 Beispielprogramme in 5 Kategorien (asm, b64, basic, c, pb) |
PBXB64 V4 jetzt herunterladen
Vollständiges Release-Paket: Compiler, CHM-Hilfe, 1233 PB-Include-Dateien, 127 Beispielprogramme. UPX-gepackt auf 856 KB, digital signiert von Theo Gottwald.