PicoMite V6.00.02 release candidates - all versions
Author
Message
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 11322
Posted: 08:46am 16 Apr 2025
This was a bug that I've now fixed and will be in the next version. I asked Cortana to rewrite your code in "modern" Basic and this is the result
W = 0 For X = 1 To 9 Print X; For Y = 0 To 9 Do Z = (10 * X + Y) * 0.1 If Abs(10 ^ W - Z) <= 0.001 Then T = Int(10000 * W) Print Tab(6 * Y + 4); T; Exit Do End If W = W + 0.0001 Loop Next Y Print Next X End
Good news. I was pretty hopeful as the change is very minor but the small bit of code was complex to get right. The way it works is that variable data grabs memory from the top of the heap down and previously temporary system data did the same. Now system data grabs memory from the bottom of the heap up. System data is inherently more transient so the search for memory is much faster if it doesn't have to compete with static variables (arrays, framebuffers etc.)
Now we are really splitting hairs
This is because height of 400 (720x400) doesn't divide by the font height of 12. Geoff's original code places the status line characters by reference to the bottom of the screen. This doesn't work for tile colouring and I adjusted the placement to be n characters down the screen but missed that one. Will fix in the next RC (or will that be the release?)
Great: You may find RC15 is a little bit faster again Edited 2025-04-16 20:10 by matherp