summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2023-11-04Reformat changelog in Markdown; Add test program (including build script); ↵0.45Gabriel Bjørnager Jensen
Update readme (make Markdown); Rewrite and restructure project; Update optimisation flags; Depend on ctrlc, sdl2, and toml; Set window title according to image; Draw video memory; Update naming convention; Update gitignore; Never hang on trap; Run CPU on seperate thread; Rework logs;
2023-07-05Fill window according to first palette entry0.44Gabriel Jensen
2023-07-05Update messages; Fix lsr and lsl; Fix str;0.43Gabriel Jensen
2023-07-05Implement Thumb: * ldr Rd, [Rn, Immediate5]; * ldr Rd, [Rn, Rm]; * ldr ↵0.42Gabriel Jensen
Rd, [pc, Immediate8]; * ldr Rd, [sp, Immediate8]; * lsl Rd, Rm, Immediate5; * svc Immediate8; * push Registers; * pop Registers; * strh Rd, [Rn, Immediate5]; * lsr Rd, Rm, Immediate5; Update readme; Rework instruction functions; Improve comments; Attach license file; Initialise SP; Optimise sign-extensions; Bump dependency versions
2023-07-02Implement Thumb: * mov Rd, Rm; * movs Rd, immediate_8; * movs Rd, Rm; Update ↵0.41Gabriel Jensen
readme; Rename condition method to check_condition;
2023-07-02Fix wrong license in readme;0.40Gabriel Jensen
2023-07-02Add support for Thumb: * bx; * b{cond}; * b; Fix bx; Rework log method; ↵0.39Gabriel Jensen
Improve comments; Update readme; Only survive invalid opcode traps;
2023-07-01Support bx; Fix ldr|str; Remove logging in release builds; Fix version ↵0.38Gabriel Jensen
number being in decimal; Update readme;
2023-07-01Support load and store instructions; Update messages; Implement some move ↵0.37Gabriel Jensen
instructions; Update log function; Add equivalent write functions; Fix conditional execution; Fix branch; Add device helper structure; Update trap print; Reenable overflow checks; License under AGPL3; Fix default configuration not being made; Update readme; Add spsr registers;
2023-06-29Bump dependency versions; Optimise b{cond}{l}.w decoder; Update messages; ↵0.36Gabriel Jensen
Remove Application::end method; Add comments; Add function for logging; Use TOML for configuration; Depend on Serde; Update readme; Remove unused Configuration::create;
2023-06-29Update manifest; Update trap function (make better use of enumerations);0.35Gabriel Jensen
2023-06-28Survive traps; Use hexadecimal version numbers; Rewrite readme into ↵0.34Gabriel Jensen
ASCII-text; Don't default image; Add configuration file;
2023-06-25Update version constant to include minor versions; Use SDL2 for windowing; ↵0.33Gabriel Jensen
Combine Application and Emulator structures; Rename opcode method to decode;
2023-06-25Support bl; Update register format; Unify trap functions; Add memory read ↵0.32Gabriel Jensen
helper functions; Update naming convention;
2023-06-24Update trap function; Add emulator helper structure; Support conditional ↵0.31Gabriel Jensen
instructions; Set signal handlers;
2023-06-23Repurpose project for emulating the AGB; Make changelog plain-text (rename ↵0.30Gabriel Jensen
to CHANGELOG.txt); Write in Rust; Update gitignore; Use Git tagging;
2022-01-25Split project; Rewrite project.Gabriel Jensen
2021-05-02Version 1↊.Gabriel Jensen
2021-05-02Version 19.Gabriel Jensen
2021-04-29Fix UTF-8 encoder.Gabriel Jensen
2021-04-29Rework.Gabriel Jensen
2021-02-09Compile luma instead of luma.bin. Get input file via arguments passed to ↵Gabriel Jensen
executable.
2021-02-07Add "changelog.html" to keep track of changes. Remove deprecated gfx library ↵Gabriel Jensen
files. Fix PGKBUILD version not considering version 0. Add new language example. Begin rewrite of entire codebase. Move old codebase into the "old" folder. Begin creation Luma stdlib API. Build "luma.bin" file instead of "luma.elf".
2021-02-04revert .gitignore stylingGabriel Jensen
reorganize source code structure in filesystem remove gfxlib in favour of language-bindings to underlying libraries adjust compiler optimization flags improve c++ stdlib replacement create cmd argument handler unite core functions in class with app data (replaces luma::dat) for easier access (no friends needed, "this->" instead of "luma::dat.") reformat README into HTML (temporary change, will be reformated again in later commit)