From 9483f1ea02337cd9401afb6bc9d3b9b7c7fda221 Mon Sep 17 00:00:00 2001 From: IonutParau Date: Sun, 6 Jul 2025 13:55:18 +0200 Subject: [PATCH] plans --- TODO.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/TODO.md b/TODO.md index e30969a..12747dd 100644 --- a/TODO.md +++ b/TODO.md @@ -9,14 +9,16 @@ - `computer` component - `modem` component - `tunnel` component -- `data` component (with error correction codes) +- `data` component (with error correction codes and maybe synthesizing audio) - `redstone` component - `internet` component +- `disk_drive` component - `computer.getDeviceInfo()`, and subsequently, component device information - `computer.beep(frequency?: number, duration?: number, volume?: number)`, frequency between 20 and 2000 Hz, duration up to 5 seconds, volume from 0 to 1. Should use the *busy* machine state to let the sandbox suspend it until it is done playing - ensure the recursive locks are used correctly to prevent race conditions - use dynamic arrays for signals (and maybe components) +- support invalid UTF-8 for GPU set and fill, which should pretend the byte value is the codepoint. # Bugfixes @@ -32,6 +34,10 @@ Should use the *busy* machine state to let the sandbox suspend it until it is do - `radio_controller` and `radio_tower` components, for radio telecommunications - (maybe) `clock` component for arbitrary precision time-keeping - `led` component for LED matrixes and/or LED lights +- `speaker` component, allows playing audio by asking for binary samples and pushing a signal when it needs more +- `microphone` component, allows reading audio from nearby sources +- `tape_drive` component, compatible with Computronics, except maybe with proper seek times and support for multiple tapes +- `cd_reader` and `cd_writer` components, to work with CDs # Internal stuff