|
fc28643c1a
|
Get rid of unneeded function prologues/epilogues
|
2025-06-26 07:23:29 +02:00 |
|
|
3730086281
|
Minimalize comments
|
2025-06-26 07:02:00 +02:00 |
|
|
61a1cb50d1
|
printf() optimization: Use syscall and mov r14 to rax rather than calling print and strlen -- r14 used to contain wrong length: mistakenly increased r14 (and performed checks) for printfNBuff
|
2025-06-25 21:57:01 +02:00 |
|
|
58cd2cc034
|
Restore console.asm:.rodata:bufferLength
|
2025-06-25 21:23:15 +02:00 |
|
|
c40ac31c1f
|
Don't push/pop r11 in printf(), idk why I did that anymore but it's not needed
|
2025-06-25 21:19:33 +02:00 |
|
|
9794c64cd5
|
printf(): Don't push and pop rsi before/after itoa (rsi is modified anyway)
|
2025-06-25 20:52:52 +02:00 |
|
|
9d904555eb
|
Improve printf() : Less jumps (cmovX), removal of finish_L/rbx mod
|
2025-06-25 20:48:53 +02:00 |
|
|
cef713db14
|
Minor optimizations in printf() (stop using rbx and r13, use smarter checks instead + pop r11 correctly (prevent stack corruption))
|
2025-06-25 20:40:35 +02:00 |
|
|
01e14d418a
|
FIX: No longer allow exceeding printf buffer, instead print an error to stdout. Temporary fix
Later, if buffer is full, print current buffer and reset buffer so that there is no limit.
|
2025-06-25 16:23:59 +02:00 |
|
|
36d21ca18b
|
Ignore invalid specifiers in printf()
|
2025-06-25 14:40:01 +02:00 |
|
|
5ead6ebdb1
|
Add support for '%%' in printf()
|
2025-06-25 14:21:46 +02:00 |
|
|
1e095bec77
|
Add printf() comment, return length of printed message
|
2025-06-25 13:56:30 +02:00 |
|
|
d0769f6ffc
|
Add support for %c in printf()
|
2025-06-25 13:49:30 +02:00 |
|
|
74178a6a2d
|
FIX: Loading arg from stack to wrong register (rsi->rdi) for %d
|
2025-06-25 13:43:06 +02:00 |
|
|
266cb57d1c
|
Proper SYS V ABI use (don't restore rsi in itoa)
|
2025-06-25 13:31:48 +02:00 |
|
|
f5e1143138
|
Fix issue in printf() with %d --needed to push+pop several registers before/after itoa() call
|
2025-06-25 13:29:26 +02:00 |
|
|
4438abda11
|
Dump current state of printf() (adding %d support), adds itoa()
|
2025-06-25 13:07:18 +02:00 |
|
|
1de7731139
|
printf() comment cleanup
|
2025-06-25 12:12:26 +02:00 |
|
|
3a55212f3e
|
Fix stack usage for printf(), add test
|
2025-06-25 12:00:05 +02:00 |
|
|
7054061734
|
Working '%s' for printf() (args in stack yet untested)
|
2025-06-25 11:42:44 +02:00 |
|
|
855487e857
|
printf() no longer crashes, can print string but now aborts after printing first string
|
2025-06-25 11:31:01 +02:00 |
|
|
dcb2b8acae
|
Start writing printf() D:
|
2025-06-25 11:08:56 +02:00 |
|
|
fbea8d0322
|
Adds fopen(), fwrite(), fclose()
|
2025-06-25 09:38:42 +02:00 |
|
|
035f3baabf
|
Restore NL in console.asm -- syscall 1 requires mem addr, not constant 0xA
|
2025-06-24 17:02:49 +02:00 |
|
|
2005adf25f
|
Use NL/EOS instead of 10/0, use constants.asm for global constants
|
2025-06-24 16:34:06 +02:00 |
|
|
f10b2f3c88
|
Save/restore rdi to r10 instead of stack in strcat(),puts()
|
2025-06-24 15:06:21 +02:00 |
|
|
4aee0916db
|
Remove unneeded saving of rdi in print()
|
2025-06-23 15:25:10 +02:00 |
|
|
2f5e3202db
|
min[u](),max[u](),islower(),isupper(),print(),puts(),strlen(),strcpy(),strcat()
|
2025-06-23 15:07:55 +02:00 |
|