Please sign in to access this page
An 8-bit fantasy PC with 64KB of RAM. Has a pretty simple architecture, a custom assembly-like language and a demo with docs so that anyone can try it out!
No followers yet
Once you ship this you can't edit the description of the project, but you'll be able to add more devlogs and re-ship it as you add new features!
Added sections with addresses which allow you to move a section of the code to a specific address! Useful for loading programs from disk (see examples/savedisk.l64 and examples/execdisk.l64)
I fixed the hello.l64 example (that unfortunately got my ship rejected) and also added better errors - now you can see the specific line and column of the error!
I fixed the keyboard! Now SHIFT
works properly, and you can input uppercase and lowercase letters. I even wrote a really simple text editor!
[main]
add $0 1
keygo $0 handle
goto main
[handle]
call print
[loop]
keygo $0 loop
goto main
[print]
neqgo $0 0x08 print_skip
print sys $0
print sys ' '
[print_skip]
print sys $0
ret
The only thing left to do now is to write dome docs and I think I'm done!
I added disk support in the emulator, as well as support for loading ROMs from files!
Things to do:
- Better docs
- Fix keyboard
- ???
I finished working on the language! And also added opcodes that allow you to manipulate two pointers - one for RAM, one for the disk - that you can read and write data with.
Things to do:
- Simpler ROM loading
- Disk support in emulator
- Fix keyboard
- ???
Added more instructions to lang64K! Now you can recreate the ASCII table program :D
Things to do:
- Simpler ROM loading
- More convenient opcodes for memory/disk manipulation
- Finish writing the language compiler
- Disk support in emulator
- Fix keyboard
- ???
Started writing a simple assembly-like language for easier development! On the screenshot, you can see the code and the result of a simple Hello World program.
Things to do:
- Simpler ROM loading
- More convenient opcodes for memory/disk manipulation
- Finish writing the language compiler
- ???
Implemented most of the opcodes and wrote a simple program to print all printable ASCII characters in order. Takes up only 19 bytes!
uint8_t rom[] = {
0x06, 0x00, 0x20,
0x1a, 0x00, 0x7f, 0x00, 0x10,
0x24, 0x00,
0x06, 0x10, 0x01,
0x00, 0x00, 0x03,
0x00, 0x00, 0x10
};
thought out most of the opcodes, though they may get changed later
attached is a portion of them