Commit Graph
100 Commits
Author SHA1 Message Date
dunkaist 32e460b8f3 Add another wrapper: kos_sys_misc_load_file 2023-07-19 19:10:06 +01:00
dunkaist 462f1c3075 Add .gitattributes to fix test logs (eol style) 2023-02-20 04:26:47 +00:00
dunkaist 2f58d4453d Use a CreateProcessA argument instead of chdir on Windows
Plus minor build fixes
2023-02-20 03:09:07 +00:00
dunkaist d59526a8af Fix to align with the KolibriOS upstream 2023-02-20 01:52:44 +00:00
dunkaist 0b6d607c77 [runtests] Implement windows-specific logic of the test runner 2023-02-20 01:05:01 +00:00
dunkaist 8b30bd62e3 Convert tests to the new format 2023-02-17 02:04:54 +00:00
dunkaist 1768109979 Fix cmpfiles() in runtests, add two tests in the new format 2023-02-16 21:10:11 +00:00
dunkaist f5a5044e20 Implement new test runner, mainly for timeouts 2023-02-16 19:32:37 +00:00
dunkaist e027ef8ea9 [vdisk/qcow2] Handle the return value of open(2) properly 2023-02-16 19:26:31 +00:00
dunkaist 99515bca17 Move a helper script (indent_begin_end.py) to contrib dir 2023-02-16 19:24:59 +00:00
dunkaist e2afb85d9f Move lodepng files to deps/lodepng dir 2023-02-14 14:29:54 +00:00
dunkaist ab563f3db9 Add shell commands wait_for_os_idle, wait_for_window 2023-02-13 23:48:48 +00:00
dunkaist 40fa7218b1 Use mem_test from init.inc 2023-02-12 23:13:49 +00:00
dunkaist cbcb3e1ddb Initialize default boot vars from umka_init 2023-02-12 19:02:31 +00:00
dunkaist 905628d96d [umka_shell] Add commands wait_for_idle and csleep 2023-02-12 16:52:01 +00:00
dunkaist 8883b1c5de [umka_os] Add a command console in a separate thread 2023-02-10 22:33:22 +00:00
dunkaist bd46201f6a Remove outdated info and a binary 2023-02-07 04:54:41 +00:00
dunkaist 855bdd6d16 Enable static network tests 2023-02-07 04:32:39 +00:00
dunkaist e71791c0ab Implement vnet_null device
Such device don't need new threads and files but are valid ethernet
devices for the kernel. Convenient for testing.
2023-02-07 04:32:32 +00:00
dunkaist 6a479621e9 Fix network on windows 2023-02-06 14:21:05 +00:00
dunkaist e1f01e0156 Fixes for Windows(R)(TM) 2023-02-05 10:09:40 +00:00
dunkaist ac55d2ddf2 Minor compilation fixes for Windows(R)(TM) 2023-02-05 08:06:14 +00:00
dunkaist 9d54898197 Use isocline instead of bestline for portability
Something more lightweight is definitely required.
2023-02-05 07:53:19 +00:00
dunkaist 297b58a4d5 Use em_inflate instead of miniz
Move dependencies to deps directory.
2023-02-04 23:42:57 +00:00
dunkaist ff1db047ff Fix more compiler warnings (gcc and clang) 2023-02-04 21:15:27 +00:00
dunkaist 5b0cf9febc Get rid of poll(2), use a blocking thread for network
Finally, network doesn't load CPU on 100%. Ping is below 0.5ms.
2023-02-03 02:35:26 +00:00
dunkaist d0387f7d53 [umka_os] Introduce dedicated I/O thread
Not as nice as io_uring but portable.
2023-02-02 23:52:35 +00:00
dunkaist 12442c72a7 Get rid of getopt, use Optparse
Well, I thought I had done this before. P for portability.
2023-02-02 16:25:20 +00:00
dunkaist 987095fdef Fix network, ping works again 2023-02-02 00:59:40 +00:00
dunkaist be21f83af2 Split vnet driver to generic vnet part, tap and file interfaces
Fix most compilation issues of umka_shell on Windows(R)(TM), not all
of them.
2023-02-01 18:55:20 +00:00
dunkaist 0fdfde2b5b Sync Optparse with the upstream 2023-01-31 02:46:41 +00:00
dunkaist a7cc9c091e Sync LodePNG with the upstream 2023-01-31 02:43:49 +00:00
dunkaist d16177c36d Implement common command buffer for the shell and os 2023-01-31 02:38:48 +00:00
dunkaist 68cfb39f8d Use static_assert from assert.h 2023-01-30 06:43:39 +00:00
dunkaist e03ae18548 Support different framebuffer formats, add tests 2023-01-30 06:24:23 +00:00
dunkaist d8ce095598 bestline: Implement bestlineFile to override stdin/stdout 2023-01-29 20:00:39 +00:00
dunkaist b5a345ad5f Merge lfbview to umka_os 2023-01-28 02:57:08 +00:00
dunkaist dc48e267d6 Merge tools/lfbview to umka_monitor 2023-01-21 07:58:50 +00:00
dunkaist 94ebe02739 Switch to the wall clock timer, communicate via shared memory 2023-01-21 07:49:13 +00:00
dunkaist 65cbfbc743 qcow2: reuse cluster data for adjacent sectors (speed up ~30%) 2023-01-18 20:16:33 +00:00
dunkaist dd34949209 qcow2: cache L1 table (speed up ~10% on my system) 2023-01-18 19:46:44 +00:00
dunkaist 76c7819882 Split I/O code to generic io* and platform specific io_async* 2023-01-18 08:32:17 +00:00
dunkaist 3345936052 Add lfbview tool: LFB viewer using SDL2
In theory, should work under X and Wayland.
It won't work under Windows though because of used system calls.
2023-01-18 03:04:02 +00:00
dunkaist 53683cf146 umka_os: route virtual device IRQs via IDT 2023-01-18 02:58:09 +00:00
dunkaist da8f029e5d Move static variables to context structures 2023-01-17 00:58:28 +00:00
dunkaist 74a593746e Pass a tool number to umka_init command
Implemented tools:
 + umka_shell
 + umka_fuse
 + umka_os
 + umka_gen_devices_dat
2023-01-16 05:49:24 +00:00
dunkaist 783545bdf8 Create platform specific I/O module, prepare for io_uring 2023-01-16 04:54:34 +00:00
dunkaist f1b6893e4d vdisk: use file descriptors instead of FILE*s
This should help with io_uring later.
2023-01-16 03:14:48 +00:00
dunkaist 99c50bd258 Make umka_os use a start up script, don't hardcode 2023-01-16 02:51:46 +00:00
dunkaist 102dad1daf Compile in core/sys32.inc 2023-01-12 21:24:06 +00:00
dunkaist e8f75d1d03 Fix samehash and lookup_v5 tests 2023-01-09 04:07:36 +00:00
dunkaist 59ac33c787 Fix XFS lookup tests 2023-01-09 02:10:40 +00:00
dunkaist 436aa461b0 Use sgdisk to partition images 2023-01-09 02:07:42 +00:00
dunkaist d80c240abd Update {gen,mk}samehash tools for xfs, add new fat* and ext* tests 2023-01-09 02:07:28 +00:00
dunkaist 4a6f3e3039 Add mksamehash utility to make same-hash directories
Yes, first you generate names with gensamehash (very slow) and then
make many directories with mksamehash (relatively fast).
2023-01-09 02:07:20 +00:00
dunkaist eb243bf14f Switch image generation from GNU Make to GNU Bash
Should have been done long time ago.
2023-01-09 02:07:20 +00:00
dunkaist bbc42c6436 Implement qcow2 support, convert most images from raw
This allows exbibyte-sized images, compression and (potentially)
non-destructive writing.
2023-01-09 02:07:20 +00:00
dunkaist ef72da6b76 Make shell:disk_list_partitions() report PiB ad EiB
I.e. pebibytes and exbibytes. 1 zebibyte (ZiB) is 2^70 bytes which is
above 2^64 bytes, so ignore it so far.

Btw, 2^80 bytes is 1 yobibyte (YiB).
2023-01-09 02:07:07 +00:00
dunkaist 464b92cda4 Change filename suffix of raw images from .img to .raw 2023-01-09 02:07:05 +00:00
dunkaist 887b904904 Split vdisk to vdisk_raw and vdisk_qcow2
vdisk_raw got existing functionality, no new features. Qcow2 support is
yet to be implemented. Miniz was imported with that in mind.
2023-01-09 02:06:52 +00:00
dunkaist e76dea6bf1 Remove some boilerplate and hardcode, add lookup tests 2023-01-09 02:06:46 +00:00
dunkaist f291ffc03b Make shell:disk_list_partitions() more verbose
Show disk sector size and capacity, partition's size and start sector.
2023-01-03 20:39:10 +00:00
dunkaist b0be99a9e9 Make all the test hdd images use MBR instead of GPT
Well, it's just easier to generate MBR because GPT requires a few
sectors at the very end of a disk. A separate test for GPT should be
written: with tens of partitions and so on.
2023-01-02 02:26:56 +00:00
dunkaist fecf7be637 Add two tools: mkdoubledirs and gensamehash
mkdoubledirs creates pairs of directories a/a, b/b, c/c etc. This is to
test file lookup code: there must be a directory named blah only if the
current directory is named blah too.

gensamehash generates file names with the same XFS hash to test the
code that resolves collisions. In principle, can be updated for other
hashes: ext*, exfat, etc.
2023-01-02 01:50:02 +00:00
dunkaist cb8c3274af Add XFS nrext64 image and test 2022-12-29 03:45:36 +00:00
dunkaist 3cef60408b Use 64bit time_t, add XFS bigtime test, allow atime and mtime testing 2022-12-28 20:39:21 +00:00
dunkaist 715c181582 Wrap kos_osloop, add a test for resizing cursors 2022-06-28 20:13:41 +04:00
dunkaist 395f75d1f7 Speed up coverage, not drastically 2022-06-28 17:10:21 +04:00
dunkaist bf1af355fe Sync LodePNG with upstream 2022-06-28 12:25:04 +04:00
dunkaist 155df83d73 Clean up vnet, update README 2022-06-28 12:23:14 +04:00
dunkaist 7f88bbf11c Update copyright headers and years 2022-06-27 21:36:56 +04:00
dunkaist f0f8cb8e37 Get rid of umka_ping hack! Use vnet_init 2022-06-27 16:41:29 +04:00
dunkaist ac151ef588 [umka_os/linux] Simulate hw interrupts via signals 2022-06-26 23:57:02 +04:00
dunkaist 566de74194 Configure tap via C code. No shell commands needed 2022-06-26 12:44:16 +04:00
dunkaist d82c5530ed Wrap fs_execute, works for umka_os tool! 2022-06-25 02:41:23 +04:00
dunkaist 52c2167249 Get rid of ctx->fout, use stdout instead 2022-05-31 21:10:43 +04:00
dunkaist 5314ef2cae Implement basic variables (to hide pointers from logs) 2022-05-31 17:43:41 +04:00
dunkaist 20b2013007 Compile in /init.inc 2022-05-30 21:47:49 +04:00
dunkaist 04833f514c Add missing coverage macros 2022-05-30 13:04:04 +04:00
dunkaist 219d72226a Use bestline library, update test logs 2022-05-30 02:08:15 +04:00
dunkaist cfc0102d28 Use optparse library 2022-05-29 19:17:00 +04:00
dunkaist a0d3499d57 Add wrappers/tests for keyboard, mouse and cursors 2022-05-29 01:55:13 +04:00
dunkaist d479f8a121 umka_os: Load very basic userspace KolibriOS app 2022-05-26 16:45:36 +04:00
dunkaist ce6ad3efa6 Add one more exfat test 2022-04-26 16:21:41 +04:00
dunkaist 52f3acaebc Add exfat test. 2022-04-23 22:34:24 +04:00
dunkaist 985f10fb88 Add tup build stub. 2022-03-12 00:20:40 +04:00
dunkaist d59c8d5f55 Add a basic exfat test. 2022-03-12 00:08:20 +04:00
dunkaist c5dd1673af Use freopen instead of fopen for test output 2022-02-09 22:45:17 +03:00
dunkaist 3cf74d2664 Sync with KolibriOS trunk
Tested on r9710.
2022-02-09 22:19:54 +03:00
dunkaist 25979e4a5b Include unistd.h and increase fasm memory 2021-12-13 17:04:42 +03:00
dunkaist 5eb6770760 Improve build on Windows via llvm-mingw 2021-12-13 16:57:05 +03:00
dunkaist 74f78a60de Build with clang optionally 2021-12-13 01:07:42 +03:00
dunkaist 3015516f22 Add ACPI and PCI test files 2021-12-12 21:54:53 +03:00
dunkaist c963ccebd6 test: don't chown files on fat32 partition 2021-12-12 21:54:46 +03:00
dunkaist b5bd088e09 Clean branch main from acpi stuff, move it to branch acpi 2021-12-01 22:17:02 +03:00
dunkaist 129e6d4fe7 Update logs. 2021-11-17 20:56:40 +03:00
dunkaist 42c1c55029 Add write_devices_dat shell command, 043_#acpi_m012.t test 2021-11-17 20:56:32 +03:00
dunkaist 3d50050c6b Update logs. 2021-11-16 19:40:06 +03:00
dunkaist 74157df1cf Add umka_gen_devices_dat tool. 2021-11-04 05:52:50 +03:00
dunkaist 2f8181504c Implement and export more acpi wrappers. 2021-11-03 17:28:03 +03:00