MEGA65 / open-roms

A project to create unencumbered open-source ROMs for use on selected retro computers
Other
263 stars 18 forks source link

Strings in BASIC #50

Closed FeralChild64 closed 4 years ago

FeralChild64 commented 4 years ago

This pull request is sponsored by strings:

...and a bunch of improvements here and there.

Strings are stored in a way similar to BASIC V3.5 and later - every one of them is followed by a back-pointer, allowing for much faster garbage collection. The difference is, that we don't have a special back-pointer value telling this is a temporary string, they are recognized by checking if the back-pointer points to zero page.

Arrays still need some work (more testing needed, we currently miss creating arrays with default size of 10) - but this pull request is already quite large, I don't want to delay it even further.

As always, all similarities >3 explained in the last commit. I'll write a post for the blog - just not today.