[News] BBC BASIC Beta Testing - 2009/03/06 r720

Porting Richard Russell's BBC BASIC (Z80) to the TI-83+ and TI-84+ series calculators.

Moderator: benryves

Post Reply
User avatar
benryves
Maxcoderz Staff
Posts: 3087
Joined: Thu 16 Dec, 2004 10:06 pm
Location: Croydon, England
Contact:

[News] BBC BASIC Beta Testing - 2009/03/06 r720

Post by benryves »

After several months of work I'm happy to announce the first beta of BBC BASIC (Z80) for the TI-83+/TI-84+.

Image Image

The host interface code is a fairly complex beast and I am sure that there are conditions where it does not act as it is supposed to, so I would greatly appreciate your help in finding any bugs, quirks, oddities or missing features.

Full documentation is included as is a (Windows-only) .NET 2.0 utility to edit BBC BASIC program files and a (Mono-compatible) utility to convert text files to BBC BASIC programs and vice-versa.

Have fun, and I welcome your suggestions and bug reports in this thread.

If you are having difficulty reading the help please see this post or browse the documentation online.
User avatar
tr1p1ea
Maxcoderz Staff
Posts: 4141
Joined: Thu 16 Dec, 2004 10:06 pm
Location: I cant seem to get out of this cryogenic chamber!
Contact:

Re: Beta Testing - 2008/01/12

Post by tr1p1ea »

Great work ben! Im loading it on my calc now, ill play around and let you know how it goes :).
"My world is Black & White. But if I blink fast enough, I see it in Grayscale."
Image
Image
User avatar
b-flat
New Member
Posts: 29
Joined: Mon 26 Feb, 2007 9:19 pm

Re: Beta Testing - 2008/01/12

Post by b-flat »

Yay, I have already downloaded the file to my calculator; I'll check it out some tonight and during school tomorrow (and post about it when I get a chance).
User avatar
b-flat
New Member
Posts: 29
Joined: Mon 26 Feb, 2007 9:19 pm

Re: Beta Testing - 2008/01/12

Post by b-flat »

I seem to be having an issue with the display when I use the insert mode of editing. To begin with, the last character is left as a solid black rectangle and I can move my cursor where ever I want to on the screen. I would recommend limiting where you can move the cursor; it was very confusing at first.

I'll post more feedback as I get a chance to use more of it, but I have to go do some homework now.

EDIT: actually, the moving part has nothing to do with insert, but the black rectangle does.
User avatar
benryves
Maxcoderz Staff
Posts: 3087
Joined: Thu 16 Dec, 2004 10:06 pm
Location: Croydon, England
Contact:

Re: Beta Testing - 2008/01/12

Post by benryves »

@b-flat - see the Copy Key Editing section under Editing in the documentation:
This version of BBC BASIC (Z80) supports a text editing feature known as copy key editing. It allows you to split the text editing cursor into two components, a write cursor and a read cursor. The read cursor, which takes the form of a blinking underscore, may be moved anywhere on the screen, and by pressing the Copy key the text characters underneath it are copied and written to the write cursor's position (which takes the form of a solid block). Both cursors then advance together.

You enter the copy key editing mode by pressing any of the four cursor keys (up, down, left or right). Position the read cursor with the cursor keys to the start of the text you wish to copy, then press the Copy key - marked X,T,Θ,n on the calculator keypad - to copy text to the write cursor. Copy key editing mode is exited when you press Enter to confirm the line.
Tip: *FX 4,1 disables copy-key editing, allowing you to use GET to retrieve cursor keys. See the "OS Calls", "OSBYTE" section for more information.

Note that the documentation references a Catalogue feature; due to memory problems saving the state of the console this feature is currently unavailable.
User avatar
Gibaoran
New Member
Posts: 2
Joined: Wed 10 Dec, 2008 9:07 pm

Re: Beta Testing - 2008/01/12

Post by Gibaoran »

Not just to complain but... the help file seems to not work...
Life Doesn't Make Sense
User avatar
tr1p1ea
Maxcoderz Staff
Posts: 4141
Joined: Thu 16 Dec, 2004 10:06 pm
Location: I cant seem to get out of this cryogenic chamber!
Contact:

Re: Beta Testing - 2008/01/12

Post by tr1p1ea »

Strange, it works perfectly fine for me. (Not to mention that its very detailed).
"My world is Black & White. But if I blink fast enough, I see it in Grayscale."
Image
Image
User avatar
benryves
Maxcoderz Staff
Posts: 3087
Joined: Thu 16 Dec, 2004 10:06 pm
Location: Croydon, England
Contact:

Re: Beta Testing - 2008/01/12

Post by benryves »

If you downloaded BBC BASIC using IE or Firefox and extracted the help file using the built-in Windows unzipper right-click the .chm file, go into Properties then click the "Unblock" button under "Security". This is a rather irritating feature that was introduced in XP SP2. You should unblock the zip once downloaded, alternatively download it using Opera or use a third-party unzipping utility.

The documentation was generated from a MediaWiki database, so it should be possible to convert it to a "regular" HTML website as well as a CHM.

Sorry if this release feels a bit rough around the edges, I've been very busy over the last few weeks but thought it was worth releasing something sooner rather than later.
User avatar
b-flat
New Member
Posts: 29
Joined: Mon 26 Feb, 2007 9:19 pm

Re: Beta Testing - 2008/01/12

Post by b-flat »

Thanks; I was having a similar problem with the documentation (which is quite nice, btw)!

However, I am having another issue, this time with the Sierpins program (the demo you included). When I run the program, it looks nothing like the picture in your screenshot of the program. It appears as though the columns (in groups of 8) are being randomized with their vertical alignment. Additionally, that alignment is constantly changing, so it creates for some very interesting effects (one time when I exited using ON, the result was the partially completed triangle, but upside down). Am I doing something incorrect when I run the program (aka is there some setting I need to have set beforehand)? I'm using a TI-84+SE.
User avatar
benryves
Maxcoderz Staff
Posts: 3087
Joined: Thu 16 Dec, 2004 10:06 pm
Location: Croydon, England
Contact:

Re: Beta Testing - 2008/01/12

Post by benryves »

b-flat wrote:Thanks; I was having a similar problem with the documentation (which is quite nice, btw)!
I've noticed a few issues with formatting, it needs tidying up. In the meantime, I've hacked this together.
However, I am having another issue, this time with the Sierpins program (the demo you included). When I run the program, it looks nothing like the picture in your screenshot of the program.
This could be a bug, either in the program or in the host interface. Could you please try exiting BBC BASIC, restarting it and running it before any other programs and seeing if that helps? Failing that, try entering the two following commands:

Code: Select all

*YAXIS UP
*GSCALE 4
...then running it again. (I note those two commands are undocumented, hmm). If that doesn't help it's a bug in the host interface.

Edit: The new download only changes the documentation, everything else is the same.
bwang
New Member
Posts: 25
Joined: Tue 11 Nov, 2008 7:36 pm

Re: Beta Testing - 2008/01/15

Post by bwang »

I've had problems with the sierpins program too. I've tried the two commands and it doesn't work. I'm also using a 84+SE. Also, cls doesn't seem to clear the bottom few rows of the screen.
Kiruahxh
New Member
Posts: 15
Joined: Tue 13 Jan, 2009 8:41 pm

Re: Beta Testing - 2008/01/15

Post by Kiruahxh »

Very nice app!! That's great! :D

The programs Sierpins bug in my calc too, after a moment, it reduces the screen at the right side... (I have a 84+, and the bug happens sometime with ASM)

There is an annoying bug: the files I write sometimes disappear... They are still in memory, but BBC is unable to find them.
And I can't do: SAVE "TESTBBC" if the program don't already exist, whereas the first I did it, it worked.
User avatar
benryves
Maxcoderz Staff
Posts: 3087
Joined: Thu 16 Dec, 2004 10:06 pm
Location: Croydon, England
Contact:

Re: Beta Testing - 2008/01/15

Post by benryves »

Sounds like an LCD timing bug on the 84+, thanks for reporting it. Do other graphics commands (try the CLOCK and CUBE demos) work? The pixel-plotting routine writes directly to the LCD (pointless to send 768 bytes to the LCD when only one has been updated) so there could well be a bug in that code.
bwang wrote:Also, cls doesn't seem to clear the bottom few rows of the screen.
CLS clears the text viewport. In MODEs 0 (the default) and 3 text characters are six pixels high, making the text viewport 96x60 pixels. The bottom four rows are outside the text viewport so cannot be cleared with CLS. CLG will clear the graphics viewport, which by default fills the screen. You can change the size of the text and graphics viewports (see the VDU Emulator documentation) which is why I can't just clear the entire screen with CLS.

I noticed that the SIERPINS demo doesn't clear the screen properly, I'll look into it.
There is an annoying bug: the files I write sometimes disappear... They are still in memory, but BBC is unable to find them.
And I can't do: SAVE "TESTBBC" if the program don't already exist, whereas the first I did it, it worked.
That's rather more important. Are you doing this on a real calculator or on an emulator? I noticed this happened on Wabbitemu (84+), but never on PTI (83+) or on a real 83+.
Kiruahxh
New Member
Posts: 15
Joined: Tue 13 Jan, 2009 8:41 pm

Re: Beta Testing - 2008/01/15

Post by Kiruahxh »

I am using a true Ti 84+...

I made a Ram Clear and it solved the problem of undetected programs (and programs that creates when I want to load them, if they don't exist)

There is another bug: The letter 'e' is not available, and the 'd' is difficult to have...

The problem with my screen happens when the screen refreshes too fast, it happens with some of grayscales Asm programs. But as soon as nothing is done, the bug remains on your screen.


There is a program to fix it, but it must be run each time the bug appears. (http://www.ticalc.org/archives/files/fi ... 36608.html)
Maybe you could use this code when you leave a program.
User avatar
benryves
Maxcoderz Staff
Posts: 3087
Joined: Thu 16 Dec, 2004 10:06 pm
Location: Croydon, England
Contact:

Re: Beta Testing - 2008/01/15

Post by benryves »

Kiruahxh wrote:I made a Ram Clear and it solved the problem of undetected programs (and programs that creates when I want to load them, if they don't exist)
I'm sorry, but I don't quite follow what you mean. :(
There is another bug: The letter 'e' is not available, and the 'd' is difficult to have...
This may be another speed issue with my keypad code. The calculator is in 15MHz mode on the TI-84+ and TI-83+ SE, so I may add a command to reduce the speed to see if that helps bugs. Really, the CPU should be dropped to 6MHz when taking input from the user anyway.
The problem with my screen happens when the screen refreshes too fast, it happens with some of grayscales Asm programs. But as soon as nothing is done, the bug remains on your screen.
I think that's the problem with my code, it's writing to the screen too fast.
Post Reply