Commit Graph

596 Commits

Author SHA1 Message Date
Vincent Ollivier a9eb6f9c21
Add ANSI OSC color palette support (#566)
* Refactor vga palette code

* Add osc dispatch to handle ansi palette

* Add warning macro

* Deprecate vga set palette command

* Add shell script to set palettes

* Remove TODO

* Add new TODO comments

* Add reset sequence

* Add cursor edge checks
2024-01-09 00:18:47 +01:00
dependabot[bot] 1de69e0d4d
Bump uart_16550 from 0.2.19 to 0.3.0 (#524) 2024-01-04 19:19:50 +00:00
dependabot[bot] 3b15905a46
Bump object from 0.32.1 to 0.32.2 (#564) 2024-01-04 19:13:41 +00:00
dependabot[bot] 50413914cd
Bump smoltcp from 0.10.0 to 0.11.0 (#565) 2024-01-04 19:12:31 +00:00
Vincent Ollivier 10ce053a32
Add escape sequences to shell (#558) 2024-01-04 20:07:00 +01:00
Vincent Ollivier 362e905990
Publish version 0.10.2 (#562)
* Bump MOROS version to 0.10.2

* Update changelog

* Bump lisp to 0.7.0

* Update documentation

* Add links to PRs in changelog

* Add missed version bumps in doc

* Update screenshot

* Update some binaries
2023-12-22 11:52:47 +01:00
Vincent Ollivier b83ace31a7 Update changelog 2023-12-21 10:08:51 +01:00
Vincent Ollivier 82bc08ed96
Add number->string function to lisp (#561)
* Add number->string function

* Add alias

* Add documentation
2023-12-19 22:51:13 +01:00
Vincent Ollivier 9f525990a5
Improve Lisp with Advent of Code 2023 🎄 (#556)
* Add contains? to Lisp

* Use ls everywhere instead of lst

* Rename system command to shell

* Exec '/ini/lisp.lsp' at startup

* Check if init file exist

* Add missing lisp init file

* Remove contains?

* Add empty? function

* Add reject? function

* Update doc

* Add dict type to Lisp

* Add push function

* Add binary literals to doc

* Move push function from primitive to core lib

* Update lisp doc

* Add escape character to parser

* Add backspace to parser

* Update doc

* Add host function

* Fix regex.match?

* Test if and while for truthiness instead of comparing with true

* Add tests for empty string and 0

* Mention truthiness in changelog

* Check for unspecified IPv4 in usr::host::resolv

* Transform host error into nil

* Update ntp.lsp to support hostnames

* Fix typo

* Fix escape display

* Use '/' instead of '.' as namespace separator

* Add doc.lsp

* Fix comment color

* Update changelog
2023-12-17 17:24:55 +01:00
Vincent Ollivier 525b1dcca3
Upgrade toolchain from 2023-05-01 to 2023-12-01 (#559)
* Upgrade toolchain from 2023-05-01 to 2023-12-01

* Remove redundant call

* Rebuild binaries

* Remove redundant redefinition of a binding
2023-12-17 17:24:23 +01:00
Vincent Ollivier d22c504726
Improve system information (#553)
* Add socket command to manual

* Update syscall doc

* Update copyright year in help command

* Fix lisp include

* Fix error styling in shell

* Use uppercase hex

* Update website

* Move some CSI color positions

* Update line-height
2023-12-01 16:51:02 +01:00
Vincent Ollivier ae6d47aec7
Add hash command (#554)
* Add hash command

* Fix globbing without dir

* Add missing file
2023-11-30 00:43:10 +01:00
Vincent Ollivier 9086221bac
Improve binary support (#552)
* Remove 0X notation

* Fix method name

* Add binary

* Replace {:#x} with {:#X}

* Replace {:#016x} with {:#016X}

* Rewrite print_hex

* Use offset in elf command

* Replace remaining ':#x' format
2023-11-26 11:56:25 +01:00
Vincent Ollivier bd4672cc36 Rewrite parts of CONTRIBUTING.md 2023-11-21 10:03:51 +01:00
Vincent Ollivier 0fac4d40d7 Update changelog 2023-11-21 10:02:03 +01:00
Vincent Ollivier 4327e1eb26 Rewrite parts of CONTRIBUTING.md 2023-11-21 10:01:10 +01:00
Vincent Ollivier 419001cc26
Add basic userspace shell (#548)
* Increase MAX_PROCS to 4

* Check MAX_PID before creating a process

* Remove id from Process::new()

* Add parent_id to Process

* Add exec command

* Avoid freeing outside of the heap

* Add debug output

* Disable free operation

* Add args to exec commands

* Fix warning

* Include exec binary

* Revert cmd split

* Add disabled debug output for some syscalls

* Remove undocumented proc command

* Disable exec and hello install
2023-11-21 09:26:19 +01:00
Vincent Ollivier 85c055f812 Remove debug output 2023-11-20 20:50:04 +01:00
Vincent Ollivier b4b3b0f425
Add basic userspace allocator (#544)
* Add userspace allocator

* Fix demo

* Return from userspace exceptions

* Add failing test

* Add allocator to process struct

* Update binaries

* Update binaries again

* Fix stack address

* Fix heap size

* Move up debug output in free syscall
2023-11-20 20:44:05 +01:00
Vincent Ollivier 02c1b7f52a
Improve documentation (#547)
* Update readme

* Add hardware page

* Add contributing page

* Update changelog

* Update contributing

* Update index

* Add games page

* Move images to doc/images

* Rebuild website

* Fix dsk/var/www

* Update contributing

* Change games order
2023-11-19 21:03:10 +01:00
Vincent Ollivier bcdfd713ae
Add process page table (#454)
* Refactor kernel page table

* Add mapper and frame_allocator

* Set physical memory offset in bootloader crate

* Load process page table

* Set stack and boot-info addresses

* Fix alloc error

* Remove unused code

* Add comment
2023-11-18 09:34:06 +01:00
dependabot[bot] e43d2e3c71
Bump vte from 0.12.1 to 0.13.0 (#543) 2023-11-17 09:09:16 +00:00
Vincent Ollivier b77e886748
Add more code examples to lisp (#542)
* Add ntp client

* Add ntp to install

* Add fetch example
2023-11-17 10:08:47 +01:00
Vincent Ollivier 96b20dfb51
Add support for hexadecimal numbers in Lisp (#540)
* Add support for hexadecimal numbers in lisp

* Add source in comment

* Add support for 0X

* Add doc

* Remove extra space in doc

* Remove plural

* Add negative number to doc

* Update doc

* Fix typo

* Add ntp client

* Add ntp to install

* Remove ntp code
2023-11-17 10:08:25 +01:00
Vincent Ollivier 74df7467cb
Upgrade acpi crate to 5.0.0 (#538) 2023-11-12 18:36:09 +01:00
Vincent Ollivier 6b4a6fa092
Run cargo clippy (#541) 2023-11-12 18:34:41 +01:00
dependabot[bot] 382ee16dcc
Bump vte from 0.12.0 to 0.12.1 (#539) 2023-11-08 06:36:12 +00:00
dependabot[bot] 0bfba7e493
Bump num-traits from 0.2.16 to 0.2.17 (#536) 2023-10-13 07:05:54 +00:00
dependabot[bot] 2ef8c8f37c
Bump libm from 0.2.7 to 0.2.8 (#535) 2023-10-09 06:07:07 +00:00
dependabot[bot] 6a05726f17
Bump x86_64 from 0.14.10 to 0.14.11 (#531) 2023-10-05 20:07:56 +00:00
dependabot[bot] 96bba76474
Bump vte from 0.11.1 to 0.12.0 (#532) 2023-10-05 19:52:15 +00:00
dependabot[bot] 0978d15586
Bump sha2 from 0.10.7 to 0.10.8 (#533) 2023-10-05 19:51:47 +00:00
Vincent Ollivier a82c87c61c Publish version 0.10.1 2023-09-23 09:09:31 +02:00
dependabot[bot] 9112caebe6
Bump num-bigint from 0.4.3 to 0.4.4 (#526) 2023-09-06 08:29:36 +00:00
dependabot[bot] bd6bf72be3
Bump object from 0.32.0 to 0.32.1 (#528) 2023-09-06 08:21:24 +00:00
dependabot[bot] 3b83639449
Bump object from 0.31.1 to 0.32.0 (#525) 2023-08-20 18:04:16 +00:00
Vincent Ollivier b61433af83 Update changelog 2023-07-29 16:27:38 +02:00
Vincent Ollivier b606c064c6
Add network syscalls (#512)
* Add connect syscall

* Add tcp socket device

* Add socket.connect to lisp

* Rewrite tcp command to use the syscalls

* Rewrite http command to use the syscalls

* Use socket#recv_slice instead of socket#recv

* Move connect to net module

* Refactor connect

* Refactor code

* Add listen syscall

* Add accept

* Add close to FileIO

* Fix write loop

* Add poll syscall

* Rewrite socket command to use poll

* Update console polling

* Rename file handle to handle

* Remove prompt option from socket

* Make poll blocking with timeout and cancel

* Add one byte status read

* Remove poll blocking

* Fix error when connect is followed directly by close

* Change tcp and socket command arguments

* Add sleep while polling without events

* Speed up connection failure detection

* Add back some verbose output

* Fix socket listen

* Split net files

* Add UDP sockets

* Refactor host command code

* Move shared socket code to module

* Use recommended buffer size in socket file size

* Remove debug output

* Fix fallback socket size

* Update html doc

* Update network screenshot

* Update lisp manual
2023-07-29 16:24:45 +02:00
Vincent Ollivier eab33dc5c3
Fix regex in shell redirection from (#523) 2023-07-29 16:24:16 +02:00
Vincent Ollivier 2a5da4a37e
Evaluate load argument in lisp (#522) 2023-07-29 16:21:42 +02:00
Vincent Ollivier cd41710e29
Fix cursor movements on long lines in editor (#521)
* Fix cursor horizontal move on long lines

* Fix cursor alignment on long lines

* Increase diagram size in comment

* Fix insertion
2023-07-26 09:49:17 +02:00
Vincent Ollivier 0efe794f34 Update changelog 2023-07-23 21:30:18 +02:00
Vincent Ollivier 87a49882d9
Fix CSI bug in editor (#520) 2023-07-23 21:26:36 +02:00
dependabot[bot] 241eec4bec
Bump num-traits from 0.2.15 to 0.2.16 (#517) 2023-07-21 21:25:25 +00:00
Vincent Ollivier de9dc08cf0
Fix read on fuse host driver (#519)
* Add lock

* Rename fh to handle

* Fix read with offset
2023-07-21 23:24:49 +02:00
Vincent Ollivier 48dc105452
Speed up VGA text mode (#516)
* Refactor Writer#new_line

* Refactor Writer#clear_row_after

* Update changelog
2023-07-21 19:49:39 +02:00
Vincent Ollivier 9d2f832334
Fix BitmapBlock#next_free_addr after 512 allocated blocks (#518) 2023-07-21 19:49:22 +02:00
Vincent Ollivier 6138b65739
Add PageUp and PageDown keys support (#515)
* Add PageUp and PageDown support to keyboard

* Add support in editor

* Fix edge cases

* Update changelog
2023-07-15 12:42:57 +02:00
dependabot[bot] 93e46c27be
Bump pbkdf2 from 0.12.1 to 0.12.2 (#513) 2023-07-10 07:32:47 +00:00
dependabot[bot] 3ba1536bb7
Bump uart_16550 from 0.2.18 to 0.2.19 (#514) 2023-07-10 07:32:20 +00:00