Skip to content
Tags give the ability to mark specific points in history as being important
  • v0.1.0 Release: v0.1.0
    Version 0.1.0
    
  • v0.2.0 Release: v0.2.0
    Version 0.2.0
    
    Göran Weinholt (25):
          Add some documentation (more to come)
          Move syscall, memory and I/O primitives to (loko system unsafe)
          Clean up the internal libraries
          Documentation: Add some notes on tools support
          Fix the repl handling of void (broken in 82f8e912)
          New (loko system time) library with built-ins for SRFI 19
          Add built-ins to support SRFI 6
          Fix for eval when a primitive is not a procedure
          Add an implementation of delay and force
          Add port-file-descriptor
          Add wrappers for Linux stat syscalls
          Rename $bytevector-location to bytevector-address, make it public
          Reorganize the documentation a little
          Add an early /boot file system with the multiboot modules
          Add a Hello World sample
          Add a sample that shows how to get simple graphics going
          Updates to README.md
          Add support for compilation from the command line; retire TUI
          Comment out some debugging code
          Link to the website
          Add documentation for port-file-descriptor
          Fix the return value from close-port
          Print conditions after stack traces
          Increase I/O buffer sizes to 4k
          Add support for implementing directory listings
    
  • v0.2.1
    f2f58a48 · Version 0.2.1 ·
    Release: v0.2.1
    Version 0.2.1
    
    Göran Weinholt (12):
          Add an install target in the makefile
          Fix for returning multiple values with call/cc
          Add documentation for gensym
          Add definitions for the readlink Linux syscalls
          Add an install target to the makefile
          Fix the base case of the partition procedure
          Fix library-extensions documentation to show the true default
          Change the Linux syscall wrappers to retry on EINTR by default
          Fixes for hashtable-size
          Fixes for hashtables due to the hacky way entries are deleted
          Implement the basic string comparison procedures from R6RS
    
  • v0.3.0
    ec69bbc0 · Version 0.3.0 ·
    Release: v0.3.0
    Göran Weinholt (30):
          cp0: Simplify fxarithmetic-shift with a constant shift amount
          hashtables: Fix hashtable-keys to handle deleted keys
          Fix exception handling and add parameters to (loko)
          Documentation: note how to look up trapping instructions
          Fix for lost IRQs
          Fix the return value from (get-bytevectors-n port 0)
          Initial work on fibers
          fibers: Use the proper queues for channels
          Add definitions for Linux needed to dup file descriptors
          fibers: Support for sleeping when running on a PC
          fibers: Add a web server sample for Linux
          fibers: Implement condition variables and fix wrap-operation
          fibers: Fix choice-operation
          fibers: Add non-determinism
          fibers: Add a test suite
          fibers: Integrate fibers with the runtime library I/O
          fibers: Store timers in heaps and add cleanup of channels
          fibers: Rewrite the UART driver to use fibers, various IRQ rework
          fibers: Export the safe exit-current-task, but not make-base-operation
          fibers: Document fibers, concurrency and interrupt handling
          Merge branch 'wip/fibers'
          More docs for parameters, the timing procedures and disassemble
          .gitignore: Add config.sls
          Update the version number to 0.3.0-alpha.0
          Implement get-bytevector-n, stirng->bytevector and bytevector->string
          lspci: New sample that scans and lists the PCI bus
          Add a bunch more Linux syscalls
          Documentation: minor adjustments to interrupts.md
          Export IRQ procedures
          Version 0.3.0
    
  • v0.3.1
    a032f1ef · Version 0.3.1 ·
    Release: v0.3.1
    Göran Weinholt (19):
          Replace allocate with dma-allocate
          How to contribute, some conditions, website the REPL banner
          libs buddy: New library power-of-two memory allocation
          libs buddy: Support for non-2^k memory sizes
          Set the executable bit when compiling programs
          Use the buddy allocator for DMA memory
          Fix for a minor potential missed IRQ
          Initialize library-directories and library-extensions earlier
          Enable use of eval in compiled programs; add an ethernet demo
          Updates to the README
          Fix for programs that do not use -feval
          samples bga-graphics: Use the linear framebuffer
          Fix seeking in string and bytevector output ports
          Fix for = with non-finite flonums
          Fix a typo in flodd? and fleven?
          Fix eqv? for mixed exactness and -0.0; fix equal? to use eqv?
          Fix missing latin-1-codec in put-char
          samples: Add a makefile, build them in CI
          Version 0.3.1
    
  • v0.3.2
    34f497b7 · Version 0.3.2 ·
    Release: v0.3.2
    Göran Weinholt (19):
          Fix for hashtable hash functions that return bignums
          Reserve the area used for the AP boot
          libs buddy: Add some simple hardening
          arch amd64: Fix translation of call/jmp via non-procedures
          arch amd64: Clear memory areas during allocation; more sensible log messages
          Merge loko-drivers, loko-posix, rename libs to runtime
          drivers usb: USB driver code (WIP)
          CI: Fix the sample build test
          Install (loko match) by default
          Implement more of SRFI 170 in (loko posix)
          Add support for record writers
          drivers: Add an early WIP real-time-clock driver
          Fix bug introduced in 74765b11
          main: Set the file mode correctly on binaries (oops)
          Fix miscompilation of bytevector-[su]{16,32}-ref
          lib match: Use fixnum procedures
          runtime io: Small changes to use primitives
          runtime records: Fix record-writer for opaque records
          Version 0.3.2
    
  • v0.3.3
    d41c65f4 · Version 0.3.3 ·
    Release: v0.3.3
    Christian Häggström (1):
          Use gdb.parse_and_eval to get symbol address
    
    Göran Weinholt (27):
          README: Note versions of dependencies on Chez Scheme and Akku
          runtime fibers: Set channel as opaque to have them printed nicely
          samples web-server: Workaround for concurrency issue in ports
          compiler: Add the compiler option 'freestanding
          Documentation: Add links on how to measure performance
          arch: Split asm code to reduce hard dependencies on amd64
          samples lsusb: New sample that lists discovered USB devices
          lib posix: Updates ahead of the upcoming SRFI 170 draft
          lib posix: Update to SRFI 170 draft #7
          README: Write more explicit instructions for getting the CI artifacts
          lib posix: Implement make-directory-files-generator
          Merge branch 'eval-to-get-unwinder-symbol' into 'master'
          runtime main: Remove forgotten debug output
          drivers usb: UHCI root hub support
          drivers usb: Basic USB external hub support
          Documentation: Initial docs on drivers
          arch amd64: Fix miscompilation of put-i/o-{u8,u16,u32]
          drivers uart: Driver for 8250-compatible UARTs
          Fix booting on systems with more than 4GB of RAM
          runtime records: Improve the conditions from record accessors & mutators
          runtime control: More compact printing of conditions
          samples etherdump: Print a message if no rtl8139 is found
          drivers pci: Fix a crash when there is a subordinate bus
          arch amd64: Early debug output on the VGA text console
          runtime records: Faster code for sealed records
          srfi: Add and install (srfi :170 posix), MIT-licensed
          Version 0.3.3
    
  • v0.3.4
    ebb9c2a6 · Version 0.3.4 ·
    Release: v0.3.4
    Göran Weinholt (29):
          arch amd64: Fix early VGA console scrolling at the end of the screen
          lib u8rings: Ring buffers, moved out from the UART driver
          runtime vectors: Fix type checking in make-vector
          Makefile: add a faster self compilation target
          lib u8rings: Add u8ring-clear!
          drivers ps2: PS/2 drivers for keyboards (partially working) and mice
          arch amd64: Fix logic for the 8259/PIC's Special Mask Mode
          drivers ps2: Functional PS/2 keyboard driver
          drivers: Support for keyboard maps
          drivers: Add a mouse manager similar to the keyboard manager
          drivers: uart: Increase default baud rate to a tolerable level
          drivers: ps2: Fix possible glitches during initialization
          arch amd64: Do not enable IRQ 0
          drivers: Move the MC146818 driver to rtc/
          runtime repl: Fix handling of non-serious conditions
          drivers pci: New library for reading PCI expansion ROMS
          drivers video: Bochs and VBE video drivers
          Documentation: rewrite docs in Texinfo format
          arch amd64: Add missing export for sys_connect
          runtime control: Print &program-counter conditions in hex
          arch amd64: Add sizeof-int and sizeof-void*
          compiler static: Suggest to use -feval when appropriate
          More work on the manual
          arch amd64: Increase preemption frequency to 1 kHz
          drivers uart: Increase rx buffer and decrease tx buffer
          drivers vbe: Disable debugging by default
          CONTRIBUTING: Reword and add an email option
          Documentation: add links to other resources
    
  • v0.4.0
    ed085eb5 · Version 0.4.0 ·
    Release: v0.4.0
    Göran Weinholt (49):
          drivers ata: ATA/ATAPI and IDE controller drivers
          drivers ata: Basic PACKET support
          drivers ata: Write & LBA48 support, some preparations for better ATAPI
          drivers scsi: Basic block device support
          srfi: Add a trivial SRFI 38 implementation
          compiler: Add missing i/o-error-position export
          arch amd64: Define delete-file on Linux
          runtime flonums: Implement fllog
          runtime flonums: Implement integer division
          runtime arithmetic: Fix integer-valued? and rational-valued? for flonums
          runtime arithmetic: Fix floor for flonums
          runtime flonums: Implement flexp and flexpt
          runtime arithmetic: Less wrong int-inexact
          runtime flonums: Implement flatan
          runtime flonums: Implement flsin, flcos, fltan, flasin and flacos
          runtime flonums: Fix (fl+), (fl*) and (flnumerator -0.0)
          runtime flonums: Implement flexpt and improve flexp
          runtime symbols: Implement symbol=?
          runtime arithmetic: Fixes prompted by the R6RS tests
          runtime control: Fix call-with-values for zero values
          runtime arithmetic: Fix non-base-10 formatting of complex numbers
          arch amd64: Fix code generation for bytevector-s16-ref
          runtime repl: Disable stack traces until they are fixed
          runtime bytevectors: Implement string->utf{16,32}, fix utf{16,32}->string
          runtime bytevectors: Fix bytevector-ieee-{single,double}-ref
          runtime bytevectors: Fix out-of-range UTF-32 sequences
          runtime io: Fix out-of-range UTF-8 sequences
          arch amd64: Implement file-options handling on Linux
          arch amd64: Implement set-port-position! for output files on Linux
          runtime io: buffer-mode? should return a boolean
          runtime io: Implement symbol write syntax
          runtime enums: Fix enum-set-subset? for different universes
          runtime init: Join the file I/O procedures
          runtime io: Fix a number of transcoding bugs
          runtime io: Fix write syntax for + and -
          runtime io: Common code for symbol and string hex escapes
          runtime io: Implement input/output ports
          runtime equal: Implement the Adams algorithm for equal?
          runtime: Stubbish/realish versions of everything needed to run the R6RS tests
          arch amd64: Recognize trapped overflows from fx*
          arch amd64: Recognize trapped overflows from fxarithmetic-shift-left
          tests: Add the R6RS tests from Racket
          tests r6rs exceptions: Relax an overspecified test case
          tests r6rs: Remove unused test programs
          CI: Fix compilation of the r6rs tests
          tests r6rs: Disable compilation of the syntax-case test suite
          CI: Double-dog-fix compilation of r6rs tests
          Merge branch 'r6rs-tests'
          Version 0.4.0
    
  • v0.4.1
    d675caa6 · Version 0.4.1 ·
    Release: v0.4.1
    Version 0.4.1
    
  • v0.4.2
    92d2b88f · Version 0.4.2 ·
    Release: v0.4.2
    Version 0.4.2
    
  • v0.4.3
    46dc9571 · Version 0.4.3 ·
    Release: v0.4.3
  • v0.4.4
    4cc3b117 · Version 0.4.4 ·
    Release: v0.4.4
    Version 0.4.4
    
  • v0.5.0
    71941016 · Version 0.5.0 ·
    Release: v0.5.0
  • v0.6.0
    6ab05498 · Version 0.6.0 ·
    Release: v0.6.0
  • 0.7.0 Release: Version 0.7.0
  • v0.7.0
  • v0.8.0
    38d8e490 · Version 0.8.0 ·
    Release: Version 0.8.0
  • v0.9.0
    b5aca29b · Version 0.9.0 ·
    Release: Version 0.9.0
  • v0.10.0
    4d14c06f · Version 0.10.0 ·
    Release: Version 0.10.0
    Version 0.10.0