Commit Graph

389 Commits

Author SHA1 Message Date
drmortalwombat f67d537c7c Add abort to stddef calling exit(-1) 2024-09-21 18:12:10 +02:00
drmortalwombat ce710fca5d Add float long conversion 2024-09-19 09:49:16 +02:00
drmortalwombat 534a42d2fe Implement C vs C++ void pointer semantics 2024-09-18 16:27:16 +02:00
drmortalwombat f0f174e439 Optimize conditional select of const values 2024-09-10 22:26:34 +02:00
drmortalwombat 1f9226255a Fix default member constructor for single sized member arrays 2024-09-04 12:17:58 +02:00
drmortalwombat 0b2c36ab1a Fix for sidfx in tight loop
Change might have been disregarded due to missing volatile
2024-09-02 15:26:05 +02:00
drmortalwombat 759a701df8 Add kernal banking for plus/4 kernalio.c 2024-08-30 18:40:48 +02:00
drmortalwombat 8fbe96b9ac Add options to disable BSS clear on startup 2024-08-23 20:31:17 +02:00
drmortalwombat ca995bf342 Fix zero delimiter on opp::string for fixed range string constructor 2024-08-21 19:28:40 +02:00
drmortalwombat 7ffa623d92 Fix clrscr() for VIC20 2024-08-13 19:16:19 +02:00
drmortalwombat 4027b2dbe0 Add optional define for basic upstart line 2024-08-11 14:54:50 +02:00
drmortalwombat 62cede95ce Optimize right shift with small 16 bit values 2024-08-11 14:11:07 +02:00
drmortalwombat 8a6e3eb924 Add breakpoint intrinsic in oscar.h 2024-08-09 18:05:44 +02:00
drmortalwombat d98c4b760f Optimize sprite multiplexer 2024-08-08 22:07:44 +02:00
drmortalwombat 3df85b09fc Align heap allocation on four byte boundaries 2024-08-04 18:02:04 +02:00
drmortalwombat 2ba46283b2 Optimize line draw for vertical/horizontal lines 2024-08-02 19:56:38 +02:00
drmortalwombat 5bb8ca0b89 Improve fix point arithmetic 2024-07-28 14:41:17 +02:00
drmortalwombat d0fb062006 Make log and exp intrinsics for const evaluation 2024-07-17 12:42:15 +02:00
drmortalwombat 715f295f5e Add goto and labels in C code 2024-06-25 20:45:44 +02:00
drmortalwombat 9678814654 Fix crash with extern object pointer arithmetic 2024-06-23 17:05:46 +02:00
drmortalwombat 1fa9828f6a Add additiona raster irq for kernal with potential no IO 2024-06-18 20:35:38 +02:00
drmortalwombat 3f9d042863 Optimize xy before loop index register assignment 2024-06-18 16:08:53 +02:00
drmortalwombat 277afd156d Fix over eager const pointer forwarding 2024-06-16 09:01:36 +02:00
drmortalwombat 58361e39b8 Fix crash on late const typecast to pointer 2024-06-15 13:35:17 +02:00
drmortalwombat 3770a05aee Add fast loader library flossiec 2024-06-13 21:16:42 +02:00
drmortalwombat d7a2b98b4d Add buffered lzo decompress 2024-06-12 21:07:58 +02:00
drmortalwombat c99c1756a9 Fix parameter address reference in __asm embedding 2024-06-11 13:07:50 +02:00
drmortalwombat 5ccfab0342 Fix IEC code for non interrupt usage 2024-06-11 12:12:29 +02:00
drmortalwombat 42eea7f8f4 Mark krnio_save as noinline to ensure zpage params 2024-06-10 22:36:07 +02:00
drmortalwombat 2e696d9e1a Optimize small inline function calls 2024-05-30 17:51:34 +02:00
drmortalwombat b1b5ee737b Fix functional for no parameters 2024-05-25 22:05:31 +02:00
drmortalwombat 884fe50dd7 Add missing assigns for opp::function 2024-05-25 21:26:23 +02:00
drmortalwombat af38f64a99 Add opp::function 2024-05-25 21:25:02 +02:00
drmortalwombat 755c9234e1 Update C128 exit code 2024-04-13 19:49:40 +02:00
drmortalwombat fefa462730 Improve zero page variable usage 2024-04-08 22:04:50 +02:00
drmortalwombat 99da637734 Fix include guard of kernalio.h 2024-03-25 12:25:56 +01:00
Ecte 4b2525b7a4
Update kernalio.h
Removed extra "#ifndef C64_KERNALIO_H" to fix "unterminated conditional directive" error.
2024-03-25 17:38:27 +10:30
drmortalwombat aa601a5727 Change memset and memclr to intrinsic functions 2024-03-24 11:22:13 +01:00
drmortalwombat ee43223543 Fix missing member definition in opp string 2024-03-09 14:16:28 +01:00
Ecte b411178aae
added standard c++ method c_str to opp::string that calls cstr method.
This should help Intellisense while allowing code that still uses the cstr method to work.
2024-03-09 19:44:59 +10:30
drmortalwombat 148c288942 Add extract char operator to istream 2024-02-26 18:22:21 +01:00
drmortalwombat c05bd269ad Fix stop petscii definition 2024-02-21 12:12:29 +01:00
drmortalwombat aab71cbab3 Add more std c include files 2024-02-20 14:16:32 +01:00
drmortalwombat 6f7efd9efc Optimized long multiply 2024-02-17 12:06:15 +01:00
drmortalwombat 18cfbc713a Force some inline calls in vdc 2024-02-14 15:24:01 +01:00
drmortalwombat 806539a2d6 add "tan" to intrinsic functions 2024-02-13 20:49:11 +01:00
drmortalwombat ce5be92225 Fix linux build 2024-02-12 17:40:03 +01:00
drmortalwombat 623b511ce6 restore order of vdc 16 bit writes 2024-01-29 12:42:13 +01:00
drmortalwombat 80efe2351b Optimize short wait loop handling 2024-01-28 19:09:59 +01:00
drmortalwombat 974688a8a5 Fix overlay prg file save 2024-01-27 17:11:10 +01:00
drmortalwombat bcc5e9d362 Fix propagation of conditions out of loops 2024-01-23 09:02:38 +01:00
drmortalwombat 8a49ffd111 Improve unrolled loops towards zero 2024-01-20 13:49:25 +01:00
drmortalwombat 4eaa6c8b1e Add immediate variable address parameter in inline assembler 2024-01-10 12:22:46 +01:00
Xander Mol 299374aa50 Proposals for krnio additions: setbnk and save 2024-01-09 23:50:46 +01:00
drmortalwombat 4ea3633b5a Fixed fix 2024-01-08 20:11:11 +01:00
drmortalwombat bcf19136d4 Fix zp clear in C128 on exit 2024-01-08 20:10:46 +01:00
drmortalwombat 3821b228e9 Fix missing defines for c128e conio 2024-01-06 14:18:00 +01:00
drmortalwombat 1c1d7fefaa Add c128e target machine 2024-01-06 09:09:52 +01:00
drmortalwombat da20b4d27a Fix atan2, failed in mathtest.c 2023-12-30 09:21:17 +01:00
drmortalwombat ef6598e94b Fix unnamed structs 2023-12-18 07:40:31 +01:00
drmortalwombat 5055635d3d fix unnamed union in math.c until supported by compiler 2023-12-17 22:47:14 +01:00
drmortalwombat ae4b48c445 Various loop optimizations 2023-12-16 21:03:09 +01:00
drmortalwombat 6bbf325720 Add BIT instruction for sign check, add inlay sections in linker 2023-12-12 11:08:59 +01:00
drmortalwombat 2b0f074c94 Change C128 vdc ready check 2023-12-11 12:23:34 +01:00
drmortalwombat f76599ac08 Change C128 bank 1 code to use __noinline 2023-12-10 16:48:49 +01:00
drmortalwombat ee67c6dec1 Add more HEAPCHECK 2023-12-10 12:41:37 +01:00
drmortalwombat 1e0450cd8a Optimize sprite multiplexer 2023-12-09 13:40:58 +01:00
drmortalwombat cce2f272ef Add optimization section to readme 2023-12-06 13:55:38 +01:00
drmortalwombat d48da32586 Improve placement of "if" cascades 2023-12-04 22:09:33 +01:00
drmortalwombat 11f454390e Add HEAPCHECK 2023-12-03 10:50:00 +01:00
drmortalwombat 003306f961 Fix noinline, improve cartridge use of bank 0 2023-11-29 20:53:04 +01:00
drmortalwombat cf28c1a618 Move conditions out of loops 2023-11-28 17:40:44 +01:00
drmortalwombat d5026ed9b0 Fix join common branch sequence 2023-11-26 21:34:06 +01:00
drmortalwombat 57537cd43a Join common branch code sequences 2023-11-26 15:46:59 +01:00
drmortalwombat eec4ed45d1 Fix global array aliasing error 2023-11-20 22:53:12 +01:00
drmortalwombat 0309fcb286 Fixed copy with offset 2023-11-20 08:29:23 +01:00
drmortalwombat 157f9c00e5 Fix do while loop with function condition 2023-11-16 16:40:11 +01:00
drmortalwombat 44e6921842 Change string literal processing to use unsigned chars 2023-11-14 15:02:35 +01:00
drmortalwombat 06ab48461b Implement striped unions 2023-11-06 21:33:04 +01:00
drmortalwombat 8ea991db81 Optimize div/mod unsigned pairs 2023-11-03 20:16:23 +01:00
Stefan 25a0c0b4ad
Optimisation crt.c 2023-10-26 16:37:51 +02:00
drmortalwombat 982fe17aed Fix compiler crash when using function result in if condition 2023-10-24 14:29:46 +02:00
drmortalwombat aad35e0243 Fix IEC drive timing 2023-10-22 12:14:15 +02:00
drmortalwombat 7858e32d12 Improve handling of single member structs 2023-10-15 20:17:04 +02:00
drmortalwombat 2027ac5d4c Fix template expansion in multiple cpp 2023-10-12 14:10:34 +02:00
drmortalwombat d4f979b1bc Fix accu return with temp spilling 2023-10-08 21:30:53 +02:00
drmortalwombat 33d692194a Add iterators to string 2023-10-08 16:27:52 +02:00
drmortalwombat 4e6769d81c Add <new> header file 2023-10-02 18:43:58 +02:00
drmortalwombat c53a288d0b Optimize index chains 2023-10-01 21:48:09 +02:00
drmortalwombat e6b865130a Fix volatile in vsprites 2023-09-25 19:20:30 +02:00
drmortalwombat d93cffaa30 Fix const pointers in vic_setmode 2023-09-25 19:18:22 +02:00
drmortalwombat 619c4f8962 Join consecutive functions in linker 2023-09-24 22:22:48 +02:00
drmortalwombat da29a87477 Fix address of array in const declaration to return correct pointer type 2023-09-24 11:03:54 +02:00
drmortalwombat 9d8c6991e8 Add global optimizer for parameter/return optimizations 2023-09-23 14:56:04 +02:00
drmortalwombat a0409002b6 Fix pointers in constexpr 2023-09-20 14:19:56 +02:00
drmortalwombat f211eef837 Add fold expressions for argument packs 2023-09-17 20:34:42 +02:00
drmortalwombat 38274fb4f7 Add emplace_back in vector 2023-09-17 15:40:05 +02:00
drmortalwombat 06ebf85d9d Recursive variadic templates 2023-09-17 10:24:28 +02:00
drmortalwombat ab273181f5 First shot implementing constexpr 2023-09-08 20:12:38 +02:00
drmortalwombat fa19e466de Fix opp string append char 2023-08-28 18:52:14 +02:00