Author
| Tip for the creation of top-quailty new games for MSX
|
LeandroCorreia msx professional Posts: 570 | Posted: October 20 2004, 22:19   |
Hello guys,
I know something about game programming, but I do not know anything about Assembly language, so I started to think...
Around the world, many people know a lot about the MSX architecture. But there are even more people just like me that do know about programming logics but really do not know anything about Assembly language, so...
Why don´t MSX lovers try to create a BASIC compiler (it could even be a cross-compiler, to run in a PC) to generate MSX compiled ROMs?
A compiler with the basic structures, such as while, if, for, case, goto, simple graphics commands (just like vpeek and vpoke), and commands for sound, timer, and keyboard and joystick input would be great to create most kind of games...
If that existed, my first program would be a Wolf-3D clone for the MSX... Honest...  |
|
Grauw msx professional Posts: 1008 | Posted: October 20 2004, 22:45   |
There are several Basic-compilers already:
- KUN-Basic / XBasic
- NestorBasic
- MCBC
- BASCOM
- MBASIC
The latter two produce .COM files iirc, MCBC can produce BIN files, and KUN/X/NestorBasic do on-the-fly-compilation.
All have their limits though. If you were to ask me, I'd say KUN-Basic (or rather, NestorBasic which I have heard a lot of great things about but never used myself) is the best option.
Wolf-3D though... well, all I can say is good luck ;p. No-one has been able to pull it off in assembly so... ^_^.
~Grauw
|
|
snout
 msx legend Posts: 5011 | Posted: October 20 2004, 22:47   |
Robsy created a BASIC to .ROM compiler. Perhaps a NestorBasic to .ROM compiler can be made as well?
|
|
LeandroCorreia msx professional Posts: 570 | Posted: October 20 2004, 22:50   |
Nobody did a Wolf 3D? Weird... The original ran in a 286... Considering that my clone should work in a 4x1 pixels base, the engine should render 64 stripes of screen... Doesn´t seem so hard to do...
|
|
GuyveR800 msx guru Posts: 3048 | Posted: October 20 2004, 23:32   |
Quote:
| Robsy created a BASIC to .ROM compiler. Perhaps a NestorBasic to .ROM compiler can be made as well?
|
Yes, that should be easy. |
|
Sonic_aka_T
 msx guru Posts: 2345 | Posted: October 21 2004, 03:23   |
Quote:
| Robsy created a BASIC to .ROM compiler. Perhaps a NestorBasic to .ROM compiler can be made as well?
|
Are we talking about a BASIC to ROM compiler or a program that allows you to make BASIC ROMs? Big difference between the two... |
|
GuyveR800 msx guru Posts: 3048 | Posted: October 21 2004, 04:21   |
The latter... a BASIC program in a ROM.
Some people like to call everything a 'compiler'... right snout?  *nudge* |
|
viejo_archivero msx addict Posts: 504 | Posted: October 21 2004, 06:51   |
Hey I'm just starting to code in assembler, and is not that hard  . Why don't you give it a try?  |
|
BiFi msx guru Posts: 3142 | Posted: October 21 2004, 07:28   |
Part of NestorBasic is actually KUN-Basic.
Since the MSX-BASIC to ROM conversion tool made by Robsy has some disadvantages, a bug (it's still a miracle ROM images made with this tool actually work with that bug) and for my personal learning process I decided to make one as well. Still working on one minor issue which seems to be pretty hard to determine and maybe I'll release it one day. |
|
NYYRIKKI msx master Posts: 1805 | Posted: October 21 2004, 08:11   |
Quote:
|
- KUN-Basic / XBasic
- NestorBasic
|
Those should be all you need. X-Basic is 95% compatible with native MSX-BASIC. JIT Compiler is fast to use and produces very fast code. NestorBasic is Extended version of X-Basic (kind of library of routines), that adds all kind of nice things from music replayer to TCP/IP support. These extended features work on MSX-BASIC and X-BASIC.
This is not a compiler. This is a few bytes long program, that uses BASIC ROM to execute a single BASIC command from MSX-DOS.
I thought this was interpreter, but I might be wrong. There is also compiler named Mozart, but I think we can forget these already.
Quote:
|
Perhaps a NestorBasic to .ROM compiler can be made as well?
|
Should not be extremely hard... I remember, that I tried to make a X-BASIC compiler. It did compile to defined address and did not need original BASIC source, but I remember I had some serious troubles with initing variables correctly. That was anyway very very long time ago, maybe I should take a second look...
I think, you can also use same method that is used to make BASIC ROM's, so that you don't need to compile the code.
|
|
BiFi msx guru Posts: 3142 | Posted: October 21 2004, 09:47   |
Quote:
|
This is not a compiler. This is a few bytes long program, that uses BASIC ROM to execute a single BASIC command from MSX-DOS.
|
I also heard about a real BASIC compiler with that name, made by ASCII. Can anybody confirm the existence of this compiler or should we all just refer to the tool using BASIC ROM to execute a BASIC command from MSX-DOS? |
|
Rikusu
 msx master Posts: 1088 | Posted: October 21 2004, 09:47   |
KUN Basic does weird stuff with (I think) the memory, which is why some extensions (e.g. MoonBlaster support) cause trouble when using them with a KUN Basic programme.
I, too, would really like to see a compiler that makes as clear machine language out of a BASIC programme as possible and puts that in a file that can be run without that compiler.
|
|
BiFi msx guru Posts: 3142 | Posted: October 21 2004, 09:52   |
Quote:
| KUN Basic does weird stuff with (I think) the memory, which is why some extensions (e.g. MoonBlaster support) cause trouble when using them with a KUN Basic programme.
|
I think it was because the MoonBlaster driver and BASIC KUN share the same memory area to work in, and you can't do a CALL statement within a KUN block. Using a MoonBlaster driver without the CALL statements will work perfectly with a KUN BASIC program.
Quote:
| I, too, would really like to see a compiler that makes as clear machine language out of a BASIC programme as possible and puts that in a file that can be run without that compiler.
|
MCBC? |
|
viejo_archivero msx addict Posts: 504 | Posted: October 21 2004, 10:52   |
So you're trying to make a Wolf3D-like game for MSX?. Which will be the system requirement for that monster?. What screen mode will u use for that purpose?. The walls of your game will be textured, will be filled with a plain color or will have wireframe-like render?. Enemies will be sprites?. Your character will move in axis z and x, or will use y for jumps or climb to upper levels?. In simpler words: how the hell are you going to planify the development of such a game?  . I'm surely interested!. |
|
wolf_ online
 msx legend Posts: 5178 | Posted: October 21 2004, 11:28   |
if he refers to 4x1 pixels, then it'll be screen 2 or 4 I think  |
|
|
|
|