Please sign in to access this page

PC64K

PC64K

16 devlogs
21h 5m
•  Ship certified
Created by Milk_Cool

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!

Timeline

Ship 2

1 payout of shell 36.0 shells

Milk_Cool

25 days ago

Milk_Cool Covers 3 devlogs and 1h 58m

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)

Update attachment

Added more tests. Boring stuff, i just have to make a devlog

Update attachment

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!

Update attachment

Ship 1

1 payout of shell 341.0 shells

Milk_Cool

about 1 month ago

Milk_Cool Covers 13 devlogs and 19h 6m

I finished the demo! Super excited to ship :D

Update attachment

I finished writing the docs! I just realized I have to make a demo page, though :/

Update attachment

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!

Update attachment

I added disk support in the emulator, as well as support for loading ROMs from files!

Things to do:
- Better docs
- Fix keyboard
- ???

Update attachment

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
- ???

Update attachment

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
- ???

Update attachment

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
- ???

Update attachment

Implemented timers and sound :D

Update attachment

added keyboard input

Update attachment

Made it print out the full ASCII table!

Update attachment

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
};
Update attachment

Implemented some of the functions so that I can now print stuff on the screen!

Update attachment

thought out most of the opcodes, though they may get changed later
attached is a portion of them

Update attachment