Skip to content

Commit 0e69917

Browse files
committed
update: add TV Code
1 parent bf7cf48 commit 0e69917

File tree

29 files changed

+1091
-448
lines changed

29 files changed

+1091
-448
lines changed

Makefile

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -260,9 +260,12 @@ CFLAGS_C := -m32 -O1 -ffreestanding -Wall -Wextra \
260260
-D__BUILD_DATE__=\"$(DATE_YMD)\" \
261261
-D__BUILD_TIME__=\"$(TIME_HMS)\" \
262262
-I$(SRC_DIR)/kernel/include \
263-
-I$(SRC_DIR)/user32 \
264-
-I$(SRC_DIR)/user32/TurboVision \
265-
-I$(SRC_DIR)/user32/TurboVision/include \
263+
-I$(SRC_DIR) \
264+
-I$(SRC_DIR)/stl/inc \
265+
-I$(SRC_DIR)/stl/inc/string \
266+
-I$(SRC_DIR)/user32 \
267+
-I$(SRC_DIR)/user32/TurboVision \
268+
-I$(SRC_DIR)/user32/TurboVision/inc \
266269
-I$(SRC_DIR)/fntres
267270

268271
CFLAGS_CC:= -std=c++20 $(CFLAGS_C) \

build/bin/kernel.map

Lines changed: 80 additions & 83 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,11 @@ Discarded input sections
1212
.eh_frame 0x00000000 0x7c T:/a/WelcomeBackOS/build/obj/coff/shell_loader.o
1313
.eh_frame 0x00000000 0x58 T:/a/WelcomeBackOS/build/obj/coff/pe.o
1414
.eh_frame 0x00000000 0x13c T:/a/WelcomeBackOS/build/obj/coff/wm.o
15-
.eh_frame 0x00000000 0x1f4 T:/a/WelcomeBackOS/build/obj/coff/kheap.o
15+
.eh_frame 0x00000000 0x21c T:/a/WelcomeBackOS/build/obj/coff/kheap.o
1616
.gcc_except_table
1717
0x00000000 0x4 T:/a/WelcomeBackOS/build/obj/coff/cpp_runtime.o
1818
.eh_frame 0x00000000 0x10c T:/a/WelcomeBackOS/build/obj/coff/cpp_runtime.o
1919
.eh_frame 0x00000000 0x38 T:/a/WelcomeBackOS/build/obj/coff/ctor.o
20-
.eh_frame 0x00000000 0x48 T:/a/WelcomeBackOS/build/obj/coff/kstl.o
2120
.reloc 0x00000000 0x0 dll stuff
2221

2322
Memory Configuration
@@ -267,81 +266,81 @@ Linker script and memory map
267266
0x000860af wm_set_cursor
268267
0x000860d8 wm_on_mouse
269268
0x0008618a wm_on_key
270-
.text 0x000861d0 0x380 T:/a/WelcomeBackOS/build/obj/coff/kheap.o
271-
0x000861f6 detect_memory()
272-
0x00086248 kmemcpy
273-
0x00086275 kmemset
274-
0x0008629e kmemsetw
275-
0x000862c1 kstrlen
276-
0x000862e0 kstrncmp
277-
0x0008632e kstrcmp
278-
0x00086360 kstrcat
279-
0x0008639d kheap_init
280-
0x000863bc kmalloc
281-
0x0008640a kfree
282-
0x00086459 krealloc
283-
0x000864d2 malloc
284-
0x000864e5 free
285-
0x000864fc calloc
286-
0x0008652f realloc
287-
.text 0x00086550 0x288 T:/a/WelcomeBackOS/build/obj/coff/elf_loader.o
288-
0x00086550 elf32_load_nomap
289-
.text 0x000867d8 0x1e4 T:/a/WelcomeBackOS/build/obj/coff/pe_loader.o
290-
0x000867d8 pe32_load
291-
0x0008695a pe32_start_user
292-
0x00086967 test_app
293-
.text 0x000869bc 0x94 T:/a/WelcomeBackOS/build/obj/coff/cpp_runtime.o
294-
0x000869bc operator new(unsigned int)
295-
0x000869df operator delete(void*)
296-
0x000869f6 operator new[](unsigned int)
297-
0x00086a09 operator delete[](void*)
298-
0x00086a1c operator delete(void*, unsigned int)
299-
0x00086a2f operator delete[](void*, unsigned int)
300-
0x00086a42 __cxa_pure_virtual
301-
0x00086a44 __cxa_atexit
302-
0x00086a4a __dso_handle
303-
.text 0x00086a50 0x30 T:/a/WelcomeBackOS/build/obj/coff/ctor.o
304-
0x00086a50 call_global_ctors
305-
.text 0x00086a80 0x28 T:/a/WelcomeBackOS/build/obj/coff/kstl.o
306-
0x00086a80 mini_malloc
307-
0x00086a93 mini_free
308-
.text 0x00086aa8 0x0 T:/a/WelcomeBackOS/build/obj/coff/roboto12x16.o
309-
.text 0x00086aa8 0x0 T:/a/WelcomeBackOS/build/obj/coff/testfont.o
269+
*fill* 0x000861d0 0x10
270+
.text 0x000861e0 0x3e0 T:/a/WelcomeBackOS/build/obj/coff/kheap.o
271+
0x00086206 detect_memory()
272+
0x00086258 kmemcpy
273+
0x00086285 kmemset
274+
0x000862ae kmemsetw
275+
0x000862d1 kstrlen
276+
0x000862f0 kstrncmp
277+
0x0008633e kstrcmp
278+
0x00086370 kstrcat
279+
0x000863ad kmemcmp
280+
0x0008640d kheap_init
281+
0x0008642c kmalloc
282+
0x0008647a kfree
283+
0x000864c9 krealloc
284+
0x00086542 malloc
285+
0x00086555 free
286+
0x0008656c calloc
287+
0x0008659f realloc
288+
.text 0x000865c0 0x288 T:/a/WelcomeBackOS/build/obj/coff/elf_loader.o
289+
0x000865c0 elf32_load_nomap
290+
.text 0x00086848 0x1e4 T:/a/WelcomeBackOS/build/obj/coff/pe_loader.o
291+
0x00086848 pe32_load
292+
0x000869ca pe32_start_user
293+
0x000869d7 test_app
294+
.text 0x00086a2c 0x94 T:/a/WelcomeBackOS/build/obj/coff/cpp_runtime.o
295+
0x00086a2c operator new(unsigned int)
296+
0x00086a4f operator delete(void*)
297+
0x00086a66 operator new[](unsigned int)
298+
0x00086a79 operator delete[](void*)
299+
0x00086a8c operator delete(void*, unsigned int)
300+
0x00086a9f operator delete[](void*, unsigned int)
301+
0x00086ab2 __cxa_pure_virtual
302+
0x00086ab4 __cxa_atexit
303+
0x00086aba __dso_handle
304+
.text 0x00086ac0 0x30 T:/a/WelcomeBackOS/build/obj/coff/ctor.o
305+
0x00086ac0 call_global_ctors
306+
.text 0x00086af0 0x0 T:/a/WelcomeBackOS/build/obj/coff/kstl.o
307+
.text 0x00086af0 0x0 T:/a/WelcomeBackOS/build/obj/coff/roboto12x16.o
308+
.text 0x00086af0 0x0 T:/a/WelcomeBackOS/build/obj/coff/testfont.o
310309

311-
.rodata 0x00086ac0 0x4c00
312-
0x00086ac0 __rodata_start = .
310+
.rodata 0x00086b00 0x4c00
311+
0x00086b00 __rodata_start = .
313312
*(.rodata .rodata.* .rdata .rdata.*)
314-
.rdata 0x00086ac0 0x50 T:/a/WelcomeBackOS/build/obj/coff/ckernel.o
315-
.rdata 0x00086b10 0x4 T:/a/WelcomeBackOS/build/obj/coff/math.o
316-
.rdata 0x00086b14 0x1c T:/a/WelcomeBackOS/build/obj/coff/usermodec.o
317-
.rdata 0x00086b30 0x44 T:/a/WelcomeBackOS/build/obj/coff/iso9660.o
318-
.rdata 0x00086b74 0x84 T:/a/WelcomeBackOS/build/obj/coff/video.o
319-
*fill* 0x00086bf8 0x8
320-
.rdata 0x00086c00 0x1be0 T:/a/WelcomeBackOS/build/obj/coff/vga.o
321-
0x00086d00 font16x16_italic_extra
322-
0x000874a0 font16x16_italic_extra_codepoints
323-
0x000875a0 font16x16_italic_letters
324-
0x00087c20 font12x12_italic_extra
325-
0x000881e0 font12x12_italic_extra_codepoints
326-
0x000882e0 font12x12_italic_letters
327-
.rdata 0x000887e0 0x164 T:/a/WelcomeBackOS/build/obj/coff/bitmap.o
328-
.rdata 0x00088944 0x44 T:/a/WelcomeBackOS/build/obj/coff/util.o
329-
.rdata 0x00088988 0x368 T:/a/WelcomeBackOS/build/obj/coff/atapi.o
330-
.rdata 0x00088cf0 0x308 T:/a/WelcomeBackOS/build/obj/coff/ahci.o
331-
*fill* 0x00088ff8 0x8
332-
.rdata 0x00089000 0x360 T:/a/WelcomeBackOS/build/obj/coff/ps2_mouse.o
333-
.rdata 0x00089360 0x6c T:/a/WelcomeBackOS/build/obj/coff/shell_loader.o
334-
*fill* 0x000893cc 0x4
335-
.rodata 0x000893d0 0x12e T:/a/WelcomeBackOS/build/obj/coff/int86_blob.o
336-
0x000893d0 _int86_blob_start
337-
0x000894fe _int86_blob_end
338-
*fill* 0x000894fe 0x2
339-
.rdata 0x00089500 0x2c T:/a/WelcomeBackOS/build/obj/coff/pe.o
340-
.rdata 0x0008952c 0x94 T:/a/WelcomeBackOS/build/obj/coff/wm.o
341-
.rdata 0x000895c0 0x14 T:/a/WelcomeBackOS/build/obj/coff/elf_loader.o
342-
.rdata 0x000895d4 0x2c T:/a/WelcomeBackOS/build/obj/coff/pe_loader.o
343-
.rdata 0x00089600 0x2000 T:/a/WelcomeBackOS/build/obj/coff/roboto12x16.o
344-
0x00089600 roboto12x16
313+
.rdata 0x00086b00 0x50 T:/a/WelcomeBackOS/build/obj/coff/ckernel.o
314+
.rdata 0x00086b50 0x4 T:/a/WelcomeBackOS/build/obj/coff/math.o
315+
.rdata 0x00086b54 0x1c T:/a/WelcomeBackOS/build/obj/coff/usermodec.o
316+
.rdata 0x00086b70 0x44 T:/a/WelcomeBackOS/build/obj/coff/iso9660.o
317+
.rdata 0x00086bb4 0x84 T:/a/WelcomeBackOS/build/obj/coff/video.o
318+
*fill* 0x00086c38 0x8
319+
.rdata 0x00086c40 0x1be0 T:/a/WelcomeBackOS/build/obj/coff/vga.o
320+
0x00086d40 font16x16_italic_extra
321+
0x000874e0 font16x16_italic_extra_codepoints
322+
0x000875e0 font16x16_italic_letters
323+
0x00087c60 font12x12_italic_extra
324+
0x00088220 font12x12_italic_extra_codepoints
325+
0x00088320 font12x12_italic_letters
326+
.rdata 0x00088820 0x164 T:/a/WelcomeBackOS/build/obj/coff/bitmap.o
327+
.rdata 0x00088984 0x44 T:/a/WelcomeBackOS/build/obj/coff/util.o
328+
.rdata 0x000889c8 0x368 T:/a/WelcomeBackOS/build/obj/coff/atapi.o
329+
.rdata 0x00088d30 0x308 T:/a/WelcomeBackOS/build/obj/coff/ahci.o
330+
*fill* 0x00089038 0x8
331+
.rdata 0x00089040 0x360 T:/a/WelcomeBackOS/build/obj/coff/ps2_mouse.o
332+
.rdata 0x000893a0 0x6c T:/a/WelcomeBackOS/build/obj/coff/shell_loader.o
333+
*fill* 0x0008940c 0x4
334+
.rodata 0x00089410 0x12e T:/a/WelcomeBackOS/build/obj/coff/int86_blob.o
335+
0x00089410 _int86_blob_start
336+
0x0008953e _int86_blob_end
337+
*fill* 0x0008953e 0x2
338+
.rdata 0x00089540 0x2c T:/a/WelcomeBackOS/build/obj/coff/pe.o
339+
.rdata 0x0008956c 0x94 T:/a/WelcomeBackOS/build/obj/coff/wm.o
340+
.rdata 0x00089600 0x14 T:/a/WelcomeBackOS/build/obj/coff/elf_loader.o
341+
.rdata 0x00089614 0x2c T:/a/WelcomeBackOS/build/obj/coff/pe_loader.o
342+
.rdata 0x00089640 0x2000 T:/a/WelcomeBackOS/build/obj/coff/roboto12x16.o
343+
0x00089640 roboto12x16
345344

346345
.rdata 0x0008c000 0x600
347346
.rdata$zzz 0x0008c000 0x2c T:/a/WelcomeBackOS/build/obj/coff/ckernel.o
@@ -429,7 +428,7 @@ Linker script and memory map
429428
.ctors 0x0008e000 0x4 T:/a/WelcomeBackOS/build/obj/coff/ckernel.o
430429
.ctors 0x0008e004 0x4 T:/a/WelcomeBackOS/build/obj/coff/vga.o
431430

432-
.bss 0x0008f000 0x506c1c
431+
.bss 0x0008f000 0x506c14
433432
0x0008f000 __bss_start = .
434433
*(.bss .bss.*)
435434
.bss 0x0008f000 0x8 T:/a/WelcomeBackOS/build/obj/coff/ckernel.o
@@ -490,14 +489,12 @@ Linker script and memory map
490489
.bss 0x00595c10 0x0 T:/a/WelcomeBackOS/build/obj/coff/cpp_runtime.o
491490
.bss 0x00595c10 0x4 T:/a/WelcomeBackOS/build/obj/coff/ctor.o
492491
0x00595c10 g_ctor_ran
493-
.bss 0x00595c14 0x8 T:/a/WelcomeBackOS/build/obj/coff/kstl.o
494-
0x00595c14 std::cin
495-
0x00595c18 std::cout
496-
.bss 0x00595c1c 0x0 T:/a/WelcomeBackOS/build/obj/coff/roboto12x16.o
497-
.bss 0x00595c1c 0x0 T:/a/WelcomeBackOS/build/obj/coff/testfont.o
492+
.bss 0x00595c14 0x0 T:/a/WelcomeBackOS/build/obj/coff/kstl.o
493+
.bss 0x00595c14 0x0 T:/a/WelcomeBackOS/build/obj/coff/roboto12x16.o
494+
.bss 0x00595c14 0x0 T:/a/WelcomeBackOS/build/obj/coff/testfont.o
498495
*(COMMON)
499-
0x00595c1c __bss_end = .
500-
0x00595c1c ___end = .
496+
0x00595c14 __bss_end = .
497+
0x00595c14 ___end = .
501498

502499
/DISCARD/
503500
*(.eh_frame)

build/dep/coff/kstl.d

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,2 @@
11
T:/a/WelcomeBackOS/build/obj/coff/kstl.s: \
2-
T:/a/WelcomeBackOS/src/kernel/kstl.cc \
3-
T:/a/WelcomeBackOS/src/kernel/include/kstl.h \
4-
T:/a/WelcomeBackOS/src/kernel/include/stdint.h
5-
T:/a/WelcomeBackOS/src/kernel/include/kstl.h:
6-
T:/a/WelcomeBackOS/src/kernel/include/stdint.h:
2+
T:/a/WelcomeBackOS/src/kernel/kstl.cc

src/kernel/include/kheap.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ void* krealloc (void*,uint32_t);
1313
void kfree (void*);
1414
void* kmemcpy (void*,const void*,uint32_t);
1515
void* kmemset (void*,int ,uint32_t);
16+
int kmemcmp (const void* ,const void*,size_t);
1617

1718
size_t kstrlen (const char*);
1819
char* kstrcat ( char*,const char*);

0 commit comments

Comments
 (0)