Kugel Fuhr
c72126e68f
Changed most of the library sources to use .CAP instead of .CPU.
2025-07-01 08:04:00 +02:00
mrdudz
74a2262157
hotfix
2025-06-27 17:26:11 +02:00
Kugel Fuhr
5db2aed129
Allow "sp" as an alias for "c_sp" for backwards compatibility. Using it will
...
work but generates a linker warning. Added a test to check for this warning.
2025-06-26 07:40:04 +02:00
Gorilla Sapiens
b2e5d3cd25
insipid formatting whack-a-mole
2025-06-23 17:51:44 +00:00
Gorilla Sapiens
0489098517
restore comment alignment
2025-06-22 21:34:41 +00:00
Gorilla Sapiens
b6f42f9ab2
changed "spc" to "c_sp"
2025-06-04 06:37:59 +00:00
Gorilla Sapiens
3d118dc6e5
rename "sp" to "spc", avoid conflict with 4510 opcodes
2025-06-04 02:06:40 +00:00
Stefan A. Haubenthal
774e275965
Fixed many comments
2025-03-24 20:52:55 +01:00
Colin Leroy-Mira
7d7cf2d1e0
Implement aslax7/shlax7/asrax7/shrax7
2024-01-29 07:59:11 +01:00
Bob Andrews
ba6f9f5d3f
Merge pull request #2381 from colinleroy/asm-fgets
...
Rewrite fgets in asm
2024-01-26 19:36:57 +01:00
Colin Leroy-Mira
1f820d0ae8
Rewrite fgets in asm
...
-104 bytes, -1% cycles
2024-01-24 10:16:26 +01:00
Colin Leroy-Mira
5d49fde788
add a return -1 helper
2024-01-24 09:58:09 +01:00
Colin Leroy-Mira
b23a7ec407
Save two bytes in pushax and popptr1
...
It's not because Y must equal zero on rts that we should'nt spare one byte
and one cycle.
2024-01-19 21:14:47 +01:00
mrdudz
f8f901b05e
remove dangling spaces
2022-04-17 16:06:22 +02:00
Jesse Rosenstock
0482e4d6e4
Fix CRLFs introduced by fe3f267
2020-09-18 08:57:28 +02:00
acqn
fe3f267233
Added new runtime sub bcasta/bcastax/bcasteax opposing to bnega/bnegax/bnegeax.
2020-09-11 13:33:54 +02:00
IrgendwerA8
f54e01781b
Tiny optimizations for multiplication.
2020-08-29 16:34:20 +02:00
Piotr Fusik
d38417b347
Optimize sign extension.
2019-11-07 21:45:19 +01:00
Piotr Fusik
985371433b
Swap the positive/negative paths to save a branch.
2019-11-07 21:45:19 +01:00
Piotr Fusik
421c3f2b4f
Don't set carry when already set.
2019-11-07 21:45:19 +01:00
Piotr Fusik
2bec637637
Optimize a negation in signed division.
2019-11-07 21:45:19 +01:00
IrgendwerA8
cc6559c3f6
Minor math optimizations
2019-02-28 19:48:29 +01:00
Oliver Schmidt
e86a7db18b
Some minor cleanups.
2018-07-26 14:35:26 +02:00
IrgendwerA8
465a651090
Free 2 bytes again.
2018-05-29 01:51:24 +02:00
IrgendwerA8
8a5d1b9674
Reestablished entry state of signed operation and optimized that (again).
2018-05-25 23:52:42 +02:00
IrgendwerA8
ba5b580368
Fixed first letter of comments (should be upper case).
2018-05-25 16:10:16 +02:00
IrgendwerA8
71420223bc
Changed the name of the file too.
2018-05-24 11:37:17 +02:00
IrgendwerA8
9c1cb0801c
Changed naming absvaludiv -> absvaludiv16.
2018-05-24 11:31:43 +02:00
IrgendwerA8
dd411efd1c
Adapted div & mod for popptr1.
2018-05-24 03:55:40 +02:00
IrgendwerA8
6175271651
Removed optimizations which break the compiler ones.
2018-05-22 19:10:07 +02:00
IrgendwerA8
808d3ab471
Fix for 8x16 multiplication if operants are swapped.
2018-05-22 18:35:05 +02:00
IrgendwerA8
d7da827be8
Apply faster popptr1 to functions and/or use register instead of stack to save accu.
2018-05-21 18:18:01 +02:00
IrgendwerA8
d4081b43a6
Fixed comments.
2018-05-21 14:41:12 +02:00
Irgendwer
32bbacbb78
Merge branch 'master' into popptr1
2018-05-21 13:33:14 +02:00
IrgendwerA8
911b86de67
Fixed formatting and two import issues.
2018-05-21 13:02:56 +02:00
IrgendwerA8
c95ed4b8b5
Added "popptr1" which is of common use to save some bytes.
2018-05-20 15:30:18 +02:00
Oliver Schmidt
be30c0bd70
Merge pull request #606 from pfusik/ldec
...
Optimize deceaxy
2018-03-10 11:28:46 +00:00
Piotr Fusik
18ada212e7
Fix coding style.
2018-03-09 18:48:24 +01:00
Piotr Fusik
970c5f6184
Add comments.
2018-03-08 22:10:11 +01:00
Piotr Fusik
5251b67d73
Fix comment typos.
2018-03-07 21:01:29 +01:00
Piotr Fusik
a32c50a6bc
Optimize deceaxy.
2018-03-07 20:45:50 +01:00
Lauri Kasanen
a84463a3df
callptr4
2017-05-01 21:08:03 +03:00
Oliver Schmidt
275b27647e
Removed superfluous final linefeed.
2017-04-04 15:43:56 +02:00
Oliver Schmidt
233dd5062a
Merge pull request #389 from IrgendwerA8/stringimprovements
...
Optimization of string functions (size & speed).
2017-04-04 15:39:37 +02:00
IrgendwerA8
1abfa98290
minor style changes
2017-03-19 20:51:54 +01:00
IrgendwerA8
0de44517ac
few 6502 and some 65SC02 optimizations
2017-03-12 23:21:43 +01:00
IrgendwerA8
81115aa826
Added further optimizations and unit tests.
2017-03-05 02:09:12 +01:00
Oliver Schmidt
419eb700b5
Renamed INITBSS to INIT and INIT to ONCE.
...
The way we want to use the INITBSS segment - and especially the fact that it won't have the type bss on all ROM based targets - means that the name INITBSS is misleading. After all INIT is the best name from my perspective as it serves several purposes and therefore needs a rather generic name.
Unfortunately this means that the current INIT segment needs to be renamed too. Looking for a short (ideally 4 letter) name I came up with ONCE as it contains all code (and data) accessed only once during initialization.
2016-03-06 21:27:19 +01:00
Oliver Schmidt
0ee9b2e446
Changed run location of INIT segment.
...
So far the INIT segment was run from the later heap+stack. Now the INIT segment is run from the later BSS. The background is that so far the INIT segment was pretty small (from $80 to $180 bytes). But upcoming changes will increase the INIT segment in certain scenarios up to ~ $1000 bytes. So programs with very limited heap+stack might just not been able to move the INIT segment to its run location. But moving the INIT segment to the later BSS allows it to occupy the later BSS+heap+stack.
In order to allow that the constructors are _NOT_ allowed anymore to access the BSS. Rather they must use the DATA segment or the new INITBSS segment. The latter isn't cleared at any point so the constructors may use it to expose values to the main program. However they must make sure to always write the values as they are not pre-initialized.
2015-10-14 22:52:09 +02:00
Greg King
74c2415795
Changed literal zeroes of the style "#>0" into the style "#>$0000".
2014-09-10 19:15:07 -04:00