Show HN: E80: an 8-bit CPU in structural VHDL
Hacker News (score: 17)Description
Well, it did and it works nicely. No arithmetic libraries, no PROCESS except for the DFF component (obviously). Of course it's a bit of a "resource hog" compared to optimized cores, (eg. the RAM is build out of flip flops instead of a block ram that takes advantage of FPGA intermal memory) but you can actually trace every signal through the datapath as it happens.
I also build an assembler in C99 without external libraries (please be forgiving, my code is very primitive I think). I bundled Sci1 (Scintilla), GHDL and GTKWave into a single installer so you can write assembly and see the waveforms immediately without having to spend hours configuring simulators. Currently Windows only, but at some point I'll have to do it on Linux too. I tested it on the Tang Primer 25K and Cyclone IV, and I included my Gowin, Quartus and Vivado projects files. That should make easy to run on your FPGA.
Everything is under the GPL3.
(Edit: I did not use AI. Not was it a waste of time for the VHDL because my design is too novel -- but even for beta testing it would waste my time because those LLMs are too well trained for x86/ARM and my flag logic draws from 6502/6800 and even my ripple carry adder doesn't flip the carry bit in subtraction. Point is -- AI couldn't help. It only kept complaining that my assembler's C code wasn't up to 2026 standards)
More from Hacker
Show HN: difi ā A Git diff TUI with Neovim integration (written in Go)
Show HN: difi ā A Git diff TUI with Neovim integration (written in Go)
Show HN: A fast CLI and MCP server for managing Lambda cloud GPU instances
Show HN: A fast CLI and MCP server for managing Lambda cloud GPU instances I built an unofficial CLI and MCP server for Lambda cloud GPU instances.<p>The main idea: your AI agents can now spin up and manage Lambda GPUs for you.<p>The MCP server exposes tools to find, launch, and terminate instances. Add it to Claude Code, Cursor, or any agent with one command and you can say things like "launch an H100, ssh in, and run big_job.py"<p><pre><code> Other features: - Notifications via Slack, Discord, or Telegram when instances are SSH-ready - 1Password support for API keys - Also includes a standalone CLI with the same functionality </code></pre> Written in Rust. MIT licensed.<p>Note: This is an unofficial community project, not affiliated with Lambda.
Show HN: KeelTest ā AI-driven VS Code unit test generator with bug discovery
Show HN: KeelTest ā AI-driven VS Code unit test generator with bug discovery I built this because Cursor, Claude Code and other agentic AI tools kept giving me tests that looked fine but failed when I ran them. Or worse - I'd ask the agent to run them and it would start looping: fix tests, those fail, then it starts "fixing" my code so tests pass, or just deletes assertions so they "pass".<p>Out of that frustration I built KeelTest - a VS Code extension that generates pytest tests and executes them, got hooked and decided to push this project forward... When tests fail, it tries to figure out why:<p>- Generation error: Attemps to fix it automatically, then tries again<p>- Bug in your source code: flags it and explains what's wrong<p>How it works:<p>- Static analysis to map dependencies, patterns, services to mock.<p>- Generate a plan for each function and what edge cases to cover<p>- Generate those tests<p>- Execute in "sandbox"<p>- Self-heal failures or flag source bugs<p>Python + pytest only for now. Alpha stage - not all codebases work reliably. But testing on personal projects and a few production apps at work, it's been consistently decent. Works best on simpler applications, sometimes glitches on monorepos setups. Supports Poetry/UV/plain pip setups.<p>Install from VS Code marketplace: <a href="https://marketplace.visualstudio.com/items?itemName=KeelCode.keeltest" rel="nofollow">https://marketplace.visualstudio.com/items?itemName=KeelCode...</a><p>More detailed writeup how it works: <a href="https://keelcode.dev/blog/introducing-keeltest" rel="nofollow">https://keelcode.dev/blog/introducing-keeltest</a><p>Free tier is 7 tests files/month (current limit is <=300 source LOC). To make it easier to try without signing up, giving away a few API keys (they have shared ~30 test files generation quota):<p>KEY-1: tgai_jHOEgOfpMJ_mrtNgSQ6iKKKXFm1RQ7FJOkI0a7LJiWg<p>KEY-2: tgai_NlSZN-4yRYZ15g5SAbDb0V0DRMfVw-bcEIOuzbycip0<p>KEY-3: tgai_kiiSIikrBZothZYqQ76V6zNbb2Qv-o6qiZjYZjeaczc<p>KEY-4: tgai_JBfSV_4w-87bZHpJYX0zLQ8kJfFrzas4dzj0vu31K5E<p>Would love your honest feedback where this could go next, and on which setups it failed, how it failed, it has quite verbose debug output at this stage!
Show HN: I built a clipboard tool to strip/keep specific formatting like Italics
Show HN: I built a clipboard tool to strip/keep specific formatting like Italics Hello HN,<p>Iām Joseph, a solo developer. I built CustomPaste because I was frustrated by the binary choice standard clipboard tools give us: either keep all the messy formatting (background colors, huge fonts) or strip everything down to plain text.<p>We all know Ctrl+Shift+V (paste as plain text), but that is often too destructive, it kills hyperlinks, bolding, and lists when I usually just want to normalize the font family (e.g., force Arial 11pt) or remove background colors.<p>I wanted a tool that let me "strip exactly what I want, and keep exactly what I want."<p>The Solution: Instead of a single "paste" behavior, the app lets you create reusable "Recipes" to define exactly how your text should land in your editor. It intercepts the clipboard, processes the structure locally, and transforms it based on your rules.<p>It offers granular control over:<p><pre><code> Smart Preservation: You can strip or set specific font families and sizes but specifically preserve bold, italics, and hyperlinks. </code></pre> Structure: You can preserve tables while stripping the images inside them.<p>Data Cleanup: It can instantly purge duplicate lines, sort lists alphabetically, or flatten extra blank lines.<p>Text Fixes: It cleans up AI-generated artifacts (like "smart quotes" or em-dashes) and enforces casing (Title Case, Sentence Case).<p>Privacy & Pricing: The app runs 100% locally on your machine, no cloud processing and no data harvesting. It is a one-time purchase (lifetime license), not a subscription. There is a free trial (first 100 pastes) so you can test if it fits your workflow.<p>Iād love to hear your feedback on the "Recipe" approach or any other edge cases you struggle with when pasting text!
No other tools from this source yet.