Author
| basic in the new msx
|
Tanni msx addict Posts: 303 | Posted: July 12 2005, 18:47   |
Quote:
| Yes, also because far calls are involved. The CALSLT routine takes about hundered bytes or so for performing the change of slot in my MSX1. If there are extended slots, then the routine calls itself recoursivly. I hope that the slot-ID to primary and/or secondary slot register assignement can be made by additional logic in the OCM. If not, we can implement this by modification of the VHDL source. In this case, even MSX1 BASIC would run faster, if it uses code accessed by interslot calls.
|
Then, the BIOS routine CALSLT used in the OCM must be changed, of course! But this wouldn't violate compatibility, because the BIOS entry still stays the same. |
|
wolf_
 msx legend Posts: 4781 | Posted: July 12 2005, 18:53   |
uh, tell what? the syntax? using google seems simpler to me..
I used qb4.5 until I switched to blitzbasic.. most advanced thing I made in qb was *again* a mouse-controled tile-editor with *again* my own buttonsystem... ^_^
try this: http://www.geocities.com/Area51/5967/chapter1.htm
|
|
Tanni msx addict Posts: 303 | Posted: July 12 2005, 18:54   |
So it's a version of BASIC only running on PC!
|
|
wolf_
 msx legend Posts: 4781 | Posted: July 12 2005, 18:56   |
yes, I never said it was an MSX basic
That post was a reaction on the "let's make a new basic" remark one post above that one ..
Anyway, it's just to clearify that things like IF ENDIF, DO WHILE, no linenumbers etc. etc. isn't even that modern.. since qbasic also had all that since the mid-80's .. years before the final MSX was made with again the old basic-style.. |
|
NYYRIKKI msx master Posts: 1528 | Posted: July 13 2005, 08:08   |
Quote:
| nyyrikki: a call that does something is not the same as programflow and programming-style ..
Or do you have a suggestion to gain something like:
IF <condition>
'blahblah
'blahblah
'blahblah
ENDIF
using hooks? 
|
Yes, that can be done, but as I said, it will not be fast... |
|
Tanni msx addict Posts: 303 | Posted: July 13 2005, 11:48   |
Quote:
| That post was a reaction on the "let's make a new basic" remark one post above that one ..
|
In the post of AuroraMSX, nobody talked about making a new BASIC! |
|
wolf_
 msx legend Posts: 4781 | Posted: July 13 2005, 12:35   |
I referred to his 'completely new and incompatibility with everything we know', qbasic is a big step forwards already but still requires not much new to learn.
Anyway, bottomline is that I think it's a smart move to make either a new Basic as 'OS' or a new Basic as language for the 1cm, with a way more modern approach. With partly the same syntax but more of the Pascal programflow, so: procedural, no linenumbers, long varnames, labels etc.
Does Basic need to be the start-up OS anyway? I start-up in DOS2 these days..
|
|
Tanni msx addict Posts: 303 | Posted: July 13 2005, 15:26   |
Quote:
| I referred to his 'completely new and incompatibility with everything we know', qbasic is a big step forwards already but still requires not much new to learn.
|
But, as qBASIC is a PC program, it'll be to huge to be implemented in an 8 bit MSX computer. Or, it must do excessive use of bankswitching, so execution time slows down. If you once have learnt BASIC, it is very easy to learn Pascal! Pascal is much easier than BASIC, and its already available on MSX. And you are going to learn something more advanced than any BASIC, regardless how much this BASIC has got from Pascal. So why doing tedious attempts to intermix the syntax of BASIC with unfamiliar features, if there's already a better alternative? Why staying beginner for the rest of your time?
Quote:
| Anyway, bottomline is that I think it's a smart move to make either a new Basic as 'OS' or a new Basic as language for the 1cm, with a way more modern approach. With partly the same syntax but more of the Pascal programflow, so: procedural, no linenumbers, long varnames, labels etc.
|
If you write 1cm, I always think about 1 centimeter! Yes, these features may be interesting, but they don't be BASIC.
Quote:
| Does Basic need to be the start-up OS anyway? I start-up in DOS2 these days..
|
BASIC isn't an OS! BASIC directly uses BIOS, so there isn't an OS if you finally are in BASIC after startup. Or, one could say, that BASIC is doing something an OS does normally. |
|
Tanni msx addict Posts: 303 | Posted: July 13 2005, 18:13   |
Quote:
| That post was a reaction on the "let's make a new basic" remark one post above that one ..
Anyway, it's just to clearify that things like IF ENDIF, DO WHILE, no linenumbers etc. etc. isn't even that modern.. since qbasic also had all that since the mid-80's .. years before the final MSX was made with again the old basic-style..
|
It seems to me that qBASIC is a compiler. Implementing all that for a compiler is much easier than implementing that for a interpreted language like MSX-BASIC. I don't mind about the ''modernity'' of a feature, but about its usefulness and if it fits semantically and syntactically into the already existing language. And if its implementation can be achieved easily. For MSX-BASIC, it would be e.g. very hard to implement IF ... THEN ... ENDIF. The old BASIC-style must have been taken for compatibility. And because its the style we all like! |
|
wolf_
 msx legend Posts: 4781 | Posted: July 13 2005, 18:42   |
If everyone on PC would've said: "basic should stay oldfashioned and limited, learn pascal instead" then no-one would make newer Basics..
Besides, you're now talking as if Pascal is the only next step possible .. there *are* plenty o' steps between MSX-basic and Pascal.
"the style we all like!" .. well not *everyone* .. at least subtract one
Quote:
| And you are going to learn something more advanced than any BASIC, regardless how much this BASIC has got from Pascal.
|
like? |
|
Tanni msx addict Posts: 303 | Posted: July 13 2005, 18:58   |
Quote:
| If everyone on PC would've said: "basic should stay oldfashioned and limited, learn pascal instead" then no-one would make newer Basics..
|
Why do you think BASIC is oldfashioned? It realizes just one way to do coding!
Quote:
| Besides, you're now talking as if Pascal is the only next step possible .. there *are* plenty o' steps between MSX-basic and Pascal.
|
Of course! There are also other languages, but Pascal is -- to my mind -- the best one on 8 bit systems like MSX! Another interesting one would be Forth! And yes, there are plenty of steps between BASIC and Pascal, but not all of them make sense!
Quote:
| "the style we all like!" .. well not *everyone* .. at least subtract one 
|
Ok, the style considered ''nostalgic'' among homecomputer users!
Quote:
|
Quote:
| And you are going to learn something more advanced than any BASIC, regardless how much this BASIC has got from Pascal.
|
like?
|
Turbo Pascal, Modula2, Oberon, Forth ... |
|
wolf_
 msx legend Posts: 4781 | Posted: July 13 2005, 19:08   |
no, I meant: what does pascal offer 'more' compared to an advanced Basic?
|
|
SKiLLa msx user Posts: 61 | Posted: July 13 2005, 22:03   |
Depends on how you define "an advanced Basic" Wolf ... VB.Net, VB or QBASIC vs Turbo Pascal ?
|
|
wolf_
 msx legend Posts: 4781 | Posted: July 13 2005, 22:15   |
'advanced' as in: the type of program-flow and functionality that's used in many other languages today.. block-IF's, proper functions, no line-numbers, local vars.. perhaps a means to make a structure somehow, so that you can use:
player.x
player.y
player.level
player.image
etc.
so, QB is already advanced compared to MSX-Basic ..
|
|
[D-Tail]
 msx guru Posts: 3020 | Posted: July 14 2005, 10:38   |
wolf_'s 'Advanced BASIC' exists already. It's called 'C'.  |
|
|
|
|