Computer Science

Self Relocating Program

Bruce Ediger

Once upon a time, I wrote a reasonably-strict-C89 C language program that “relocates” a function in memory and then runs it. That relocated function can relocate itself again, and run that copy, and so on and so forth.

Github repo for this program

My First Z80 Program

Bruce Ediger

I wrote a Z80 assembly program for my RC2014 Zed computer. I wanted to get a complete CP/M experience, so I used the CP/M 2.2 ASM assembler, LOAD relocator, and the DDT debugger.

I did cheat a little. Although I used the vintage RED editor for some text input, I also wrote some on my Linux laptop, and transferred to the RC2014 Zed via XMODEM.

Iceberg

Bruce Ediger

This is something:

Iceberg

A Golang Enabled Pattern

Bruce Ediger

The Go programming language has a unique, built-in concurrency model that can make some processing much easier.

Have one goroutine do some (probably recursive) work. It puts results on a channel. The main goroutine reads results from the channel and possibly does some filtering on those results, like output unique values.