From cb62e18f5698dad76538ec55bff9dd659762b391 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Fri, 25 May 2018 21:03:31 +0200 Subject: [PATCH] Kernel 0.9.1 : KERNEL, Preemtive mode. --- LIB/LIBTCPIP.S.HST.txt | 4 ++-- LIB/LIBTCPIP.S.txt | 4 ++-- README.md | 19 ++++++++++++++++++- 3 files changed, 22 insertions(+), 5 deletions(-) diff --git a/LIB/LIBTCPIP.S.HST.txt b/LIB/LIBTCPIP.S.HST.txt index bed927a8..6d41ab88 100644 --- a/LIB/LIBTCPIP.S.HST.txt +++ b/LIB/LIBTCPIP.S.HST.txt @@ -30,10 +30,10 @@ HST.GetByName >PULLW ZPPtrDNS >PUSHW ZPPtrIP - >PUSHW L.HST.SSScanF + >PUSHW L.HST.SScanF >LDYA ZPPtrDNS + >SYSCALL SScanF.YA - bcc .9 jmp DNS.QUERY.I .9 rts diff --git a/LIB/LIBTCPIP.S.txt b/LIB/LIBTCPIP.S.txt index 2594b6a1..cc6c6e98 100644 --- a/LIB/LIBTCPIP.S.txt +++ b/LIB/LIBTCPIP.S.txt @@ -94,7 +94,7 @@ L.DNS.MSG .DA DNS.MSG L.ARP.CACHE .DA ARP.CACHE L.DNS.CACHE .DA DNS.CACHE L.SKT.Template .DA SKT.Template -L.HST.SSScanF .DA HST.SSScanF +L.HST.SScanF .DA HST.SScanF L.TmpByte .DA TmpByte L.TCP.IN.JMP .DA TCP.IN.JMP.CLOSED .DA TCP.IN.JMP.LISTEN @@ -289,7 +289,7 @@ TmpOffset .BS 2 hFrameIn .BS 1 hFrameOut .BS 1 bTextMode .BS 1 -HST.SSScanF .AZ "%d.%d.%d.%d" +HST.SScanF .AZ "%d.%d.%d.%d" IP.ID .BS 2 IP.CHECKSUM .BS 4 NODE.SSOCK .BS 1 S.NODE.HANDLER diff --git a/README.md b/README.md index 423ebb34..6f61a064 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,24 @@ ## Latest News 2018-04-29 -Kernel 0.9.1 is now preemptive. All you need is a "tick" source, see below for supported hardware. +Kernel 0.9.1 is now preemptive. + +It defaults to cooperative mode ('P'olling mode). For this, no particular hardware needed (except 65c02 and 128k, of course!) + +If you want to enable preemptive mode, all you need is a "tick" source to get 'V'BL or 'C'lock Mode. +(see below for supported hardware) + +Then you must explicitly ENABLE it using KCONFIG utility. (see screenshot below) + +You can monitor the kernel state on the 'SYS' screen (OA-1, or SHIFT-OA-1 on french keyboards) and look at the upper right corner, ytou should see a blincking 'P', 'V' or 'C', showing you the current kernel state.. + +If you enabled preemptive mode, you should see an additional blinking 'S', each time the kernel switch from one PS to another. + +Reminder : + + (SHIFT)-OA-1 : Kernel SYS Screen + + (SHIFT)-OA-2 : Console Screen (Shell...) + + (SHIFT)-OA-3 : DHGR Screen (if loaded) + For now, only SBIN/BIN executables are "switcheable". Roadmap is as follow: