Jump to content
IGNORED

7800basic beta, the release thread


RevEng

Recommended Posts

Unfortunately, the asm that is produced doesn't seem compatible with the standard assembler dev kit available elsewhere. It's missing 7800basic_variable_redefs.h and several other .asm files, so I can't get any of the samples to build.

Link to comment
Share on other sites

  • 2 months later...

Hello, RevEng.

 

I have downloaded this software and ran 'install_win.bat', which succeeded. According to your instructions that shows how to test installation, it states:

To test your installation, several sample programs are included in the "samples" folder. "cd" to this folder and type:
7800bas simple.bas
If successful, a file called simple.bas.a78 will be generated that you can run on an emulator. The sample program is not very interesting, but note how simple it was to write. Open sample.bas in a text editor and take a look at how it was written.
I decided to move my 7800basic folder straight to the C Drive. So I put it in the Command Prompt an it stated.
'7800bas' is not recognized as an internal or external command, operable program or batch file.
Could I possibly be making a mistake?
Link to comment
Share on other sites

  • 1 month later...

I've been out of the loop for a while. Is there a convenient way to make graphics with the 7800 compiler or are you stuck using The Gimp like when the program first debuted?

 

I started something, what, two years ago? However, I moved and just lost interest in the project. The long, tedious process of importing graphics was part of the reason why.

Link to comment
Share on other sites

I've been out of the loop for a while. Is there a convenient way to make graphics with the 7800 compiler or are you stuck using The Gimp like when the program first debuted?

 

I started something, what, two years ago? However, I moved and just lost interest in the project. The long, tedious process of importing graphics was part of the reason why.

 

I use GraphicsGale for the actual graphics and then use ImageMagick to convert to a 2BPP image. It can be a bit hit or miss as to how it orders the palette and sometimes whether the output can be imported by 7800BASIC but it (mostly) does a good job.

  • Like 1
Link to comment
Share on other sites

When I made Fat Axl and tested it on real hardware, I noticed using a Sega Genesis/Mega Drive controller would cause the Game Over screen to loop when the game was turned on. Has anyone else had a similar issue using Genesis/MD controllers playing other games made with 7800Basic on real hardware?

Link to comment
Share on other sites

When I made Fat Axl and tested it on real hardware, I noticed using a Sega Genesis/Mega Drive controller would cause the Game Over screen to loop when the game was turned on. Has anyone else had a similar issue using Genesis/MD controllers playing other games made with 7800Basic on real hardware?

 

Playing the 7800basic games, T:Me Salvo and Dungeon Stalker I've never experienced such an issue.

 

I utilize an Edladdin Seagull 78 Controller Adapter though with the Genesis controller. Are you using an adapter with the Genesis controller, or just plugging the controller directly to the console?

  • Like 2
Link to comment
Share on other sites

 

Playing the 7800basic games, T:Me Salvo and Dungeon Stalker I've never experienced such an issue.

 

I utilize an Edladdin Seagull 78 Controller Adapter though with the Genesis controller. Are you using an adapter with the Genesis controller, or just plugging the controller directly to the console?

Directly into the console.

Link to comment
Share on other sites

Directly into the console.

 

That's likely the cause then I guess. I don't think genesis controllers are perfectly compatible on their own. Then again I remember plugging a genesis controller in to my SMS (Actually a power base converter on a genesis) and trying to play a few SMS games (like Wonderboy in Monsterworld) and it... caused weird things to happen.

  • Like 3
Link to comment
Share on other sites

That's likely the cause then I guess. I don't think genesis controllers are perfectly compatible on their own. Then again I remember plugging a genesis controller in to my SMS (Actually a power base converter on a genesis) and trying to play a few SMS games (like Wonderboy in Monsterworld) and it... caused weird things to happen.

:thumbsup:

 

Add Graze Suit Alpha to the list of 7800basic games I've played with no issues having the Edladdin adapter attached with a Genesis controller.

 

Franko, plugging the Genesis controller 'stand-alone' to the console may indeed result in undesirable side effects, hence the need for an adapter for it to interact and function properly with the console (Including the allocation and mapping of the two independent fire buttons). ;)

  • Like 2
Link to comment
Share on other sites

As mentioned, it's a general issue with the console's 2-button circuitry and the (non-adapted) genesis controllers. Nothing to be done about it, and really no need to warn about it either. Lots of systems used the D-Sub 9, and lots of them don't work correctly on the 7800.

Link to comment
Share on other sites

  • 3 weeks later...

As mentioned, it's a general issue with the console's 2-button circuitry and the (non-adapted) genesis controllers. Nothing to be done about it, and really no need to warn about it either. Lots of systems used the D-Sub 9, and lots of them don't work correctly on the 7800.

 

I'm going to post this sounding like I ignored the "Nothing to be done about it" part of your answer. Forgive me!

 

Is there a way to make games Genesis joystick tolerant? Manually resetting whatever gets screwed up every iteration of the game loop?

Link to comment
Share on other sites

I'm going to post this sounding like I ignored the "Nothing to be done about it" part of your answer. Forgive me!

 

Is there a way to make games Genesis joystick tolerant? Manually resetting whatever gets screwed up every iteration of the game loop?

 

Guaranteed 100% Genesis joystick tolerant games, plus the addition of correct joystick button behavior for games which utilize two independent button inputs, by this method. Additionally, this method too works great. For those that prefer not to utilize either of those methods provided, there is this third method. Last, but not least, there is a fourth method. ;)

  • Like 2
Link to comment
Share on other sites

 

Guaranteed 100% Genesis joystick tolerant games, plus the addition of correct joystick button behavior for games which utilize two independent button inputs, by this method. Additionally, this method too works great. For those that prefer not to utilize either of those methods provided, there is this third method. Last, but not least, there is a fourth method. ;)

 

I may have mis-read those links but they all look like hardware solutions. What in particular makes this not resolvable in software? I'm interested from a technical perspective.

Link to comment
Share on other sites

 

I may have mis-read those links but they all look like hardware solutions. What in particular makes this not resolvable in software? I'm interested from a technical perspective.

 

Well, checking some pinout charts with google images, it looks like the +5V pin is in different locations on the two controllers. On the genesis it's on pin 5, On the 7800 it's on pin 7. I suspect this can cause a lot of problems on it's own given the 5V pin I believe supplies power to the rest of the buttons for detecting if they're pressed or not. So plug in a genesis controller to a 7800, and you'd probably have to hold down the select button just to get any other buttons to work. And they'll work in odd ways even then, or not at all. The Right Button on the 7800 (The pin the 7800 will be looking for Right Button info) is the +5V line on the genesis controller - so no switch there at all.

 

I'm just talking out of my ass here given I'm not overly familiar with the genesis controller and it's been over a decade since I've seriously looked at digital circuits. :thumbsup: :D

  • Like 3
Link to comment
Share on other sites

I'm going to post this sounding like I ignored the "Nothing to be done about it" part of your answer. Forgive me!

 

Is there a way to make games Genesis joystick tolerant? Manually resetting whatever gets screwed up every iteration of the game loop?

You can make the genesis work on a 7800 if you stick to the VCS one-button mode. I believe this should force one-button mode in 7800basic...

 

SWCHB=%00010100
joybuttonmode=%00010100

In 7800 2-button mode, the wiring is just plain incompatible. Nothing to reset or fix... the 7800 2-button circuit uses a button-press detection scheme that's electrically incompatible with the genesis controller. Genesis controllers weren't designed for these systems, so it's a happy coincidence they work in any capacity at all.

 

Unless it's an optional thing, it's probably a bad idea to favor un-adapted genesis controllers over native controllers for 7800 games. Most 7800 players will avoid these controllers - or purchase adapters such as those that Trebor listed - because they don't work on any 7800 2 button games.

 

@Mord, I agree that from a circuit perspective it appears the genesis controller's multiplexer chip shouldn't work on a 2600 (or 7800 in 2600 controller mode), but it does work in the real world, and quite robustly. I think the multiplexer chip is getting back-powered over the select line. (also, the select line is an independent concept from the select button. The select button is read through one of the other lines. The select line is an input to the controller multiplexer chip, and the console chooses which button sets it can read by bringing the select line high or low.)

  • Like 2
Link to comment
Share on other sites

  • 1 month later...

I've posted an updated 0.5 version of 7800basic at 7800.8bitdev.org.

 

There were a some minor fixes here and there, and I documented the music tracker commands.

 

If you've been using the high score module, you probably need to look at the "Feature Modules" section of the manual. Due to general fixes eating up the meager 4k 7800basic normally takes, the high score code needs to be used as an external module now.

 

Enjoy!

  • Like 4
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...