Skip to content

Commit 782ccf1

Browse files
committed
feature/version
1 parent bbb6d5e commit 782ccf1

File tree

19 files changed

+419
-123
lines changed

19 files changed

+419
-123
lines changed

Makefile

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ all : init kernel memmap unittest
1010
prepare_tmp:
1111
@mkdir -p tmp/
1212

13+
KCH395_LIB_VERSION=2025.1
14+
1315
SOURCE=src/kernel.asm
1416

1517
PROGRAM_NAME=kernel
@@ -79,7 +81,7 @@ kernel: $(SOURCE)
7981
@$(AS) --verbose -s -tnone --debug-info -o kernelsd.ld65 -DWITH_SDCARD_FOR_ROOT=1 $(SOURCE) $(ASFLAGS) > output.log
8082

8183
@$(AS) --cpu 6502 -DWITH_SDCARD_FOR_ROOT=1 --verbose -s -ttelestrat src/kernel_bank0.s -o tmp/kernel_bank0.ld65 --debug-info > memmap.md
82-
@$(LD) -C cfg/rom.cfg tmp/kernel_bank8.ld65 tmp/kernel_bank0.ld65 tmp/kernel_main_memory.ld65 tmp/kernel_bank8.lib src/kernel8/orixlibs/ksocket/usr/share/ksocket/2025.1/ksocket.lib src/kernel8/orixlibs/ch395/usr/share/ch395/2024.4/ch395.lib -o kernel8.rom -Ln tmp/kernel8sd.sym -m tmp/memmap8.txt -vm
84+
@$(LD) -C cfg/rom.cfg tmp/kernel_bank8.ld65 tmp/kernel_bank0.ld65 tmp/kernel_main_memory.ld65 tmp/kernel_bank8.lib src/kernel8/orixlibs/ksocket/usr/share/ksocket/2025.1/ksocket.lib src/kernel8/orixlibs/kch395/usr/share/kch395/$(KCH395_LIB_VERSION)/kch395.lib src/kernel8/orixlibs/ch395/usr/share/ch395/2024.4/ch395.lib -o kernel8.rom -Ln tmp/kernel8sd.sym -m tmp/memmap8.txt -vm
8385

8486

8587
@cp kernel.rom kernelsd.rom

README.md

Lines changed: 15 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -4,86 +4,41 @@
44

55
## Introduction
66

7-
Orix is designed to work with ORICHD (telestrat) and Twilighte card (atmos). See : http://orix.oric.org
7+
Orix is designed to work with ORICHD (telestrat) and Twilighte board (atmos). See : http://orix.oric.org
88

9-
Some code is done by Fabrice Broche (60%) and Jede (40%). Anyway, all minitel and FDC routines had been removed
9+
Some code is done by Fabrice Broche (50%) and Jede (50%). Anyway, all minitel and FDC routines had been removed
1010

1111
Assembler : ca65
1212
CPU : 6502 & 65C02 (but 65C02 not tested)
1313

14+
# How to compile
15+
16+
Bank 8 (extended) is managed with bpm tool
17+
18+
make
19+
20+
Or for local development
21+
22+
sh run.sh
23+
1424
## How to use it ?
1525

1626
This kernel is a set of primitives to displays string, open/close/write files ...
1727

1828
You need at least "shell" bank to use this kernel
1929

20-
## Build option
30+
## Documentation
31+
32+
[Kernel Primitives Documentation](https://orix-software.github.io/developer_manual/kernel/primitives/)
2133

2234
### Root file on sdcard
2335

2436
Pass to ca65 command line : -DWITH_SDCARD_FOR_ROOT=1
2537
or else it will reads en usb key
2638

27-
here is the list of available "compile option"
28-
29-
* CPU_65C02
30-
* WITH_MULTITASKING
31-
* WITH_ACIA
32-
* WITH_DEBUG : In that case, somes primitives send their debug to printer with a help of kdebug ROM.
33-
* WITH_TWILIGHTE_BOARD
34-
3539
## How does it starts
3640

3741
* Kernel tries to start binary set in his rom label 'str_binary_to_start'
3842
* it allocates a process struct (first malloc)
3943
* and register it in processlist
4044

41-
42-
## generate .inc
43-
44-
MEMORY {
45-
#...
46-
47-
KRNL1: file = "kernel.rom", start = $C000, size = $3FFF;
48-
KRNL2: file = "kernel2.rom", start =$C000, size = $3FFF;
49-
INCL: file="kernel2.inc", start=$0000, size = $FFFF;
50-
}
51-
SEGMENTS {
52-
# ...
53-
KERNEL: load = KRNL1, type = ro, define = yes, optional = yes;
54-
EXTEND: load = KRNL2, type = ro, define = yes, optional = yes;
55-
INCLUDE: load = INCL, optional = yes;
56-
}
57-
58-
59-
60-
61-
.feature org_per_seg
62-
.pushseg
63-
.segment "EXTEND"
64-
.org $C000 ;
65-
66-
67-
; .segment "KERNEL"
68-
; .org $C000
69-
70-
71-
.popseg
72-
Macro
73-
74-
75-
.macro addsym symbole
76-
.pushseg
77-
.segment "INCLUDE"
78-
.byte .sprintf("%s = $%x", .string(symbole), symbole)
79-
.popseg
80-
.endmacro
81-
82-
Et enfin, pour ajouter un symbole dans le fichier .inc:
83-
84-
.proc xvalue_routine
85-
lda #$00
86-
....
87-
.endproc
88-
89-
addsym xvalue_routine

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2025.1
1+
2025.2

0 commit comments

Comments
 (0)