If I should be posting this somewhere else, by all means, tell me.
Some bug reports:
1) Saving a program with no extension sometimes results in "Disk full" when it obviously isn't (Still 9000 bytes free RAM).
2) Trying to load a program that is TI-BASIC (or whatever you call it) can cause the calc to crash and clear RAM.
Thanks for the help; BBCBASIC(Z80) is great.
EDIT: Forgot *BUILDINFO :
Revision 720
Bug Report
Moderator: benryves
- benryves
- Maxcoderz Staff
- Posts: 3087
- Joined: Thu 16 Dec, 2004 10:06 pm
- Location: Croydon, England
- Contact:
Re: Bug Report
Thanks for your reports!
With regard to 1, how are you measuring "free RAM"? When you start BBC BASIC it allocates a block of RAM for BASIC (heap, stack, current program memory) and leaves the rest for TI-OS variables (saved programs). This is not ideal as the two different areas of RAM have to fight amongst eachother (BBC BASIC is designed for computer systems that store files externally, eg on a floppy disc or a compact cassette). There's not much I can do about this rather messy state of affairs - in an ideal world I'd allocate all RAM to BBC BASIC and write files directly to the archive, but this sadly isn't possible with the way the hardware and TI-OS currently works.
As for 2, cheers for the report. I suppose I could add a file format check when loading to ensure it's a valid BBC BASIC variable.
It'll be a while until I can do anything about these issues, sorry, but I have a huge amount of work on my plate at the moment..!![Sad :(](./images/smilies/grayscale_sad.gif)
With regard to 1, how are you measuring "free RAM"? When you start BBC BASIC it allocates a block of RAM for BASIC (heap, stack, current program memory) and leaves the rest for TI-OS variables (saved programs). This is not ideal as the two different areas of RAM have to fight amongst eachother (BBC BASIC is designed for computer systems that store files externally, eg on a floppy disc or a compact cassette). There's not much I can do about this rather messy state of affairs - in an ideal world I'd allocate all RAM to BBC BASIC and write files directly to the archive, but this sadly isn't possible with the way the hardware and TI-OS currently works.
As for 2, cheers for the report. I suppose I could add a file format check when loading to ensure it's a valid BBC BASIC variable.
It'll be a while until I can do anything about these issues, sorry, but I have a huge amount of work on my plate at the moment..!
![Sad :(](./images/smilies/grayscale_sad.gif)
Re: Bug Report
Regarding #1:
I archived some stuff from the [2nd] Mem menu, and now it works. I guess there wasn't enough RAM for BBC to work with.
Thanks!
I archived some stuff from the [2nd] Mem menu, and now it works. I guess there wasn't enough RAM for BBC to work with.
Thanks!
Re: Bug Report
Found a bad little bug on BBC r762
RAM Clear by having a list with less than 4 characters and is given a illegal value.
ex:
During first run, the console will output "No FN at line 10". If you type 'RUN' again, the interpreter will crash with a 'RAM Clear'.
Something interesting when I forgot you have to have STRING$(##, "")...
RAM Clear by having a list with less than 4 characters and is given a illegal value.
ex:
Code: Select all
10 DIM LIS$(2)="0"
RUN
Something interesting when I forgot you have to have STRING$(##, "")...
- benryves
- Maxcoderz Staff
- Posts: 3087
- Joined: Thu 16 Dec, 2004 10:06 pm
- Location: Croydon, England
- Contact:
Re: Bug Report
Hm, odd. The CP/M version doesn't appear to have the same issue:
I'll look into it and see if I can work out why it's crashing.
Edit: Well, that's weird. When that particular error handler is called and HIMEM is &C000, SP is set to &C002. Little wonder that pushing some additional stuff onto the stack triggers a crash, is it?![Surprised :o](./images/smilies/grayscale_shocked_surprised.gif)
Edit 2: Try the latest version, does that work for you?
Code: Select all
A0>BBCBASIC
BBC BASIC (Z80) Version 3.00
(C) Copyright R.T.Russell 1987
>10 DIM LIS$(2)="0"
>RUN
No FN at line 10
>RUN
No FN at line 10
>RUN
No FN at line 10
>
Edit: Well, that's weird. When that particular error handler is called and HIMEM is &C000, SP is set to &C002. Little wonder that pushing some additional stuff onto the stack triggers a crash, is it?
![Surprised :o](./images/smilies/grayscale_shocked_surprised.gif)
Edit 2: Try the latest version, does that work for you?