NME made a good list of 1970s songs. Since I didn’t experience the 1970s myself, I can’t tell you how accurate this list is. I know that it’s subjective, but it was really fun to convert to a Youtube playlist and listen to. How did I do this? Well, see the bottom for some simple source code.Read more »
Oct 3, 2020
I’ve been working on OPL2 code for a while now. I’ve started to understand at a level beyond what I could a few years ago. This is progress. What does it mean? Let’s discuss problem-solving in the context of OPL2 in 2020. I want to write a piece of software for the Intel X86 architecture. I want it to be below the kernel of the computer meaning that there is no operating system, no bootloader and if you’re really wild, only a single function needed from the BIOS. I wrote all this and there are bugs, but instead of focusing on those bugs, we’re instead going to look at just OPL2.
If I were to get this code working on a host machine, our process of problem-solving would actually be a lot easier. Write more code and fix anything that comes up. Because testing on a host is one step more difficult than testing on a VM, I decided that most people would choose to use a VM instead of running my game on their host or a random piece of ancient hardware they have in storage. It is true of me, but I have an excuse. There is a debugger for my VM, Qemu but there is not one in my game’s kernel. That comes in mighty handy when things go wrong.Read more »
Aug 22, 2020
Melody 1: C E♭ G F G
Melody 2: C E♭ G F G C G F C
Chords: C7 C7 C7 C7 C7 F7 F7 C7 C7 G7 F7 C7 C7
Bass synchronizes with measure after 3 repetitions (4 measures) by resting 2 8th notes.
Bass variation: CCF_C_CCC_ used once on measure 10
Hi hat: 8 open 2 open 1 closed 5 open
So…Read more »
A quick piece of code for you and a bit of computer synthesized drums for you.
Read more »
import itertools a = list(itertools.product('^ox', repeat=8)) print(''.join([''.join(x) for x in a[:1000]]))