Nothing like leveraging the power of a 2+GHz multicore CPU to assemble machine code for a CPU that needs a 5x overclock to achieve 1 MIPS.

Got a '99 bottles' program running in x86 assembly. Turns out you can't assemble a 32-bit program and link it to be a 64-bit executable.

Decent way to learn x86 assembly:
Make a program that prints the lyrics to '99 bottles of beer'.

Decent way to learn x86 assembly:
Make a program that prints the lyrics to '99 bottles of beer'.

Potentially stupid idea: Make an OS where all the system level stuff is given bee-related names.
Disks are called hives. Partitions are frames. Sectors are cells. Kernel routines are workers. Processes are drones. Task scheduler is the queen.
Call it B(ee)OS.

I may be addicted to researching new (to me) CPUs and designing systems based on them.

Normal mathematics: A negative number times a negative number equals a positive number
Typical integer multiplication routines: A negative number times a negative number equals... another negative number?

Is there such a thing as a self-test program that's TOO comprehensive?

Okay, so I have an idea for my 1802-based homebrew system. For the ROM and NVRAM/Expansion-ROM, include some type of check value to ensure the contents are valid on boot-time, so that it can inform the user of an error. Boot-ROM failure will throw up an error message and halt, NVRAM/expansion-ROM error will throw up the error, but still boot normally. Might also adopt this idea to my Z80 homebrew.

Assembler: Doesn't include ORG statements
Me: Uses assembler to write new assembler that accepts ORG statements

Does anyone have any experience switching to i3 from xfwm on a linux install? Want to know if I should expect any oddness that wouldn't exist on a fresh install.

Has anyone ever been as far decided as to go do write an OS for an 8-bit computer system?

Wrote some programs for a fictional/virtual processor system, the TC-DCPU. I've made programs that can auto-find devices, read data from the clock device, and query the floppy disk's geometry. Going to work on trying to write to the disk tomorrow, see how that goes. If it works well, I'll probably work on a program to format a disk image to a custom filesystem I made.

Either way, found the documentation I needed. Probably going to make a device to act as either an 82901 emulator, or a general storage device for my project computers. Using an SD card as the storage media, a switch to control mode, and a thumbwheel to select between 8 'disks' on the SD card while the 'standard' mode will use the rest of the SD card for use with my project computers.

So last night I found out that HP sometimes sucked at documentation. Had to look through the service manual for the HP-9895A floppy drive unit to get information on the command set used with the HP-82901 and similar units, so I can make an emulator to work as a boot device for my HP-125. The command set's successor, CS/80, got its own manual so I'm a bit frustrated the original command set doesn't.

So I went ahead and wrote up a spec that's a hybrid of two other filesystems. It's simple to implement on an 8-bit system, and allows for large files for later projects. Each I-Block can define a file 36MB in size, but I-Blocks can be chained together in a linked-list to allow files up to 8.5GB in size. It can even address a 2TB volume right out of the gate. All of this with pretty small overhead for each file, and very little overhead for the filesystem itself.

Just when I thought I've for sure decided on a filesystem for my computer projects, I find an old obscure one that's simple, efficient, and flexible, that I can mod to include some of my favorite features of LEAN, since 'stock' the older filesystem includes irrelevant data. So now I'm wondering if I should stay with LEAN, or modify the 'new' one and use it instead.

Show more
Mastodon for Tech Folks

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!