From c10e1ec09bca38d634b632d4afc75d80b893c41f Mon Sep 17 00:00:00 2001 From: taitep Date: Sun, 21 Dec 2025 17:49:02 +0100 Subject: Allow other image file names through cli args, increase ram size, update readme --- README.md | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'README.md') diff --git a/README.md b/README.md index f5d0631..ef919ce 100644 --- a/README.md +++ b/README.md @@ -8,12 +8,17 @@ potentially more. No plans for RV32I or RV32/64E. Currently, the emulator is nowhere near complete, its not even at rv64i, but it does work for a subset of it. -The emulator will load a raw binary image from the file `./img` into RAM, -which starts at 0x80000000 and is currently 1MiB, +The emulator will load a raw binary image from a file specified as a CLI argument into RAM, +which starts at 0x80000000 and is currently 16MiB, and start execution at the start of the image/ram. There is also a debug out page starting at `0x00000000`-`0x00001000`. Anything written to it will be logged out in hex. -Currently there is no input, altho i might get around to making -an early UART kinda soon. +There is also a UART at `0x00001000`-`0x00002000`, the interface is quite simple: +- byte `0`: Data. When written, writes out the character + When read, reads a character from the buffer, or 0 if empty. +- byte `1`: Status. Read-only. Least significant bit is `TX_READY` and indicates whether + the UART is ready to be written to. Currently always 1. + Next least significant is `RX_READY`, indicates whether the read buffer + has any data to read. -- cgit v1.2.3