37 lines
1.9 KiB
Plaintext
37 lines
1.9 KiB
Plaintext
[#TODO]
|
|
[ ] Thread primitives (Mutex, Semaphore, etc.)
|
|
[ ] Thread Creation / Deletion
|
|
[ ] CreateWindow
|
|
[ ] ... Mouse / Keyboard inputs
|
|
[*] This is the order I want to follow, because I need them in thread context.
|
|
|
|
- Entry point(s) `Entry_Point_Main.cpp`
|
|
-> We can have a lib_init() instead of a clear entry point for now.
|
|
-> Switch from library to application once I add an entry point
|
|
-> See how rjf abstracts his entry points for each platform with TCTX.
|
|
[ ] 1. setup thread-local storage via thread_static (see raddbg, base_core.h,
|
|
C_LINKAGE thread_static TCTX *tctx_thread_local;
|
|
>> Must be assigned at entry point (arena_alloc())
|
|
>> TCTX defined in base_thread_context.h
|
|
> See Base_Thread.h
|
|
[Design Stuff]
|
|
[ ] "Primary Thread" <- Main entry point thread
|
|
[ ] "Secondary Thread" <- does all the heavy lifting for the first thread and synchronizes with the first.
|
|
[ ] Tertiary threads (launched by secondary thread and awaiting work as assigned by Primary and Secondary threads)
|
|
[ ] Multi-threaded by default with sync points
|
|
[ ] Need bindings for Semaphore and Mutex
|
|
[ ] Does calling SetProcessWorkingSetSize(.., -1, -1) cause the program to crash? Why tho.
|
|
[ ] Maybe we just shouldn't do this?
|
|
[ ] *our* program memory usage can be calculated by Stack Size + allocations from GPAllocator + allocations from arena.
|
|
[TODO - Low priority]
|
|
[ ] Implement Secure Arenas (with VirtualLock, wiping memory with RtlSecureZeroMemory)
|
|
[ ]
|
|
[Project Ideas]
|
|
[ ](Graphics): How do I create a basic overlay that shows the time, date, cpu/gpu temps, frequency, memory usage all the time and responds to global hotkey to show more info
|
|
[Documentation Notes]
|
|
Main inspirations for this codebase:
|
|
(1) jonathan blow & jai compiler project
|
|
(2) casey muratori and "handmade" approach to software
|
|
(3) ryan fleury and raddebugger codebase
|
|
|
|
Always contemplate your impulses |