Irmen de Jong
|
8d9bc2f5ff
|
fixing all sorts of things about assigning arrays to arrays
|
2024-10-12 12:33:46 +02:00 |
|
Irmen de Jong
|
5731b79554
|
don't allow problematic string and array assignments anymore, improve error messages.
In certain cases you will need to use string.copy() explicitly to overwrite strings with new strings.
|
2024-10-09 00:51:05 +02:00 |
|
Irmen de Jong
|
4cd7271e30
|
added prog8 vs other languages chapter to the manual
|
2024-09-27 20:19:28 +02:00 |
|
Irmen de Jong
|
699a2bb7ab
|
improved codegen for for loops downto 0
|
2024-09-10 21:33:57 +02:00 |
|
Irmen de Jong
|
2aae1f5e30
|
stricter checks for negative array indexing
|
2024-07-20 22:37:03 +02:00 |
|
Irmen de Jong
|
25f25a8767
|
Get rid of sort() and reverse() builtin functions.
Sort() had too many gotchas and reverse() is kinda redundant you can loop in decreasing order through an array too.
|
2024-07-06 17:07:58 +02:00 |
|
Irmen de Jong
|
bbf621a8c4
|
doc
|
2024-06-29 13:39:08 +02:00 |
|
Irmen de Jong
|
0dc50a93a4
|
added @nozp variable flag
|
2024-05-21 21:53:58 +02:00 |
|
Irmen de Jong
|
56f41d5e34
|
docs about multi-assign
|
2024-03-28 23:24:14 +01:00 |
|
Irmen de Jong
|
ba1e907c79
|
fix divmod; out args are written to and should be potential constants
|
2024-03-26 22:04:44 +01:00 |
|
markjreed
|
647af34f5b
|
fix: tweak divmod() doc (#131)
* fix: adjust naming on divmod parameters to match standard mathematical terminology; clarify description
* fix: wording
* fix: wording
|
2024-03-26 22:00:55 +01:00 |
|
Irmen de Jong
|
a5a918df84
|
update docs about boolean type
|
2024-03-12 18:54:56 +01:00 |
|
Irmen de Jong
|
9aea2b22c4
|
doc improvement, fixes #120
|
2024-01-30 19:07:18 +01:00 |
|
Irmen de Jong
|
1c55a6c6dc
|
shortcutting part one
|
2023-12-30 03:54:12 +01:00 |
|
Irmen de Jong
|
a0594cbce3
|
const optimizer now knows about a bunch of library functions, such as math.*
|
2023-12-28 20:14:13 +01:00 |
|
Irmen de Jong
|
078bfefe41
|
clarify scoped names a bit more
|
2023-12-28 16:36:29 +01:00 |
|
Irmen de Jong
|
0d44492086
|
push,pushw,pop and popw are no longer built-in functions but regular routines in sys
|
2023-12-26 14:47:31 +01:00 |
|
Irmen de Jong
|
4cd9bb8f99
|
allow Python-style negative array indexing to count from the end
|
2023-12-23 16:37:28 +01:00 |
|
Irmen de Jong
|
ad9eaeafeb
|
call now returns a word value
|
2023-12-22 22:24:11 +01:00 |
|
Irmen de Jong
|
ae66fcac1e
|
added call builtin function for indirect JSR
|
2023-12-17 15:45:28 +01:00 |
|
Irmen de Jong
|
4544af441b
|
doc tweaks, explain str a bit more
|
2023-12-17 02:02:59 +01:00 |
|
Irmen de Jong
|
332ba8ed7e
|
don't give error when returning uword value in subroutine that returns STR
|
2023-12-14 02:48:21 +01:00 |
|
Irmen de Jong
|
c7c72f00c7
|
document underscores in numeric literals for grouping
|
2023-12-09 14:07:42 +01:00 |
|
Irmen de Jong
|
6a639ce533
|
chained assignments x=y=z=42
|
2023-12-08 01:07:16 +01:00 |
|
Irmen de Jong
|
7d8b42d63e
|
allow Unicode letters in identifiers: things like 'knäckebröd' and 'π' are now valid identifiers. Added floats.π constant.
|
2023-12-05 01:36:54 +01:00 |
|
Irmen de Jong
|
6ebd4e821f
|
improved docs about subroutine scoping, fix possible optimizer crash for inlined sub
|
2023-12-04 23:23:52 +01:00 |
|
Irmen de Jong
|
ae2d96c455
|
added peekf and pokef builtin functions. Fixed sizeof() to allow number argument as well.
|
2023-11-27 23:36:02 +01:00 |
|
Irmen de Jong
|
c45fbe6310
|
continue stmt added
|
2023-11-25 01:14:35 +01:00 |
|
Irmen de Jong
|
a83e9d9a0a
|
added sys.save_prog8_internals() and restore_prog8_internals()
|
2023-11-21 22:00:43 +01:00 |
|
Irmen de Jong
|
76c09da961
|
make pokemon() be like poke, but also return the old value in the memory location.
|
2023-11-09 22:48:44 +01:00 |
|
Irmen de Jong
|
68e62e4bd2
|
added cx16.MCIOUT() kernal call
correct case of several other cx16 kernal calls.
corrected to upper case: cx16 kernal calls CLOSE_ALL, LKUPLA, LKUPSA, JSRFAR, PRIMM, MACPTR.
|
2023-10-09 22:44:36 +02:00 |
|
Irmen de Jong
|
95e4490a8a
|
adding setlsb() and setmsb() builtin functions
|
2023-09-15 02:39:16 +02:00 |
|
Irmen de Jong
|
e1b6bb154a
|
Merge branch 'master' into remove_evalstack
# Conflicts:
# compiler/res/prog8lib/cx16/gfx2.p8
# docs/source/todo.rst
# examples/test.p8
|
2023-07-28 02:09:45 +02:00 |
|
Irmen de Jong
|
4c6a2f5df9
|
emphasize index value size on pointer var indexing
|
2023-07-23 00:11:18 +02:00 |
|
Irmen de Jong
|
e2bb0de24d
|
clean up X register save/store in compiler code, remove temp vars for register saving
|
2023-07-15 22:25:58 +02:00 |
|
Irmen de Jong
|
9cb61fa34d
|
tweaks
|
2023-07-15 20:46:14 +02:00 |
|
Irmen de Jong
|
5af1aeb092
|
added block comment /* ...... */
|
2023-07-04 00:46:29 +02:00 |
|
Irmen de Jong
|
de5ce0f515
|
tiny optimization and doc
|
2023-07-02 11:17:18 +02:00 |
|
Irmen de Jong
|
5b9e71a27d
|
docs
|
2023-06-25 21:35:30 +02:00 |
|
Irmen de Jong
|
bbc02752c9
|
use split word arrays in various examples, fix codegen issue, docs
|
2023-05-29 15:34:33 +02:00 |
|
Irmen de Jong
|
06d1570142
|
cx16: added diskio.save_raw() headerless save routine
|
2023-05-20 00:00:50 +02:00 |
|
Irmen de Jong
|
b43223cb7a
|
added clamp() builtin function and floats.clampf()
|
2023-05-17 23:12:58 +02:00 |
|
Irmen de Jong
|
21bc505d85
|
for loops no longer execute when from var already reached beyond the end
|
2023-05-03 00:43:03 +02:00 |
|
Irmen de Jong
|
d81fdf6d6b
|
for loops...
|
2023-05-02 22:55:58 +02:00 |
|
Irmen de Jong
|
92062d056d
|
divmod() now works on multiple data types including float.
divmodw() has been removed
|
2023-05-02 01:19:53 +02:00 |
|
Irmen de Jong
|
06368ab0a1
|
sqrt() now works on multiple data types including float.
no need to use floats.sqrtf() anymore
|
2023-05-02 01:19:53 +02:00 |
|
Irmen de Jong
|
38efe25c68
|
abs() now works on multiple data types including float.
no need to use floats.fabs() anymore
|
2023-05-02 01:19:53 +02:00 |
|
Irmen de Jong
|
319079de7a
|
sqrt
|
2023-05-02 01:19:53 +02:00 |
|
Irmen de Jong
|
025bf900a5
|
min max docs, added floats.minf() and maxf()
|
2023-05-02 01:19:53 +02:00 |
|
Irmen de Jong
|
4274296cf3
|
api change: new 'cbm' module that now contains the common CBM kernal variables and routines.
|
2023-05-02 01:19:53 +02:00 |
|