Jump to content
IGNORED

Virtual World BASIC IDE


Mr SQL
 Share

Recommended Posts

post-30777-0-95560700-1447712367_thumb.jpg

IDE for Virtual World BASIC!

 

Here's a screenshot of the Compiler, the manual and a program loaded in the IDE:

post-30777-0-19081700-1447712165_thumb.jpg

Clicking Play compiles the BASIC program and launches the ROM in Stella.

Assembly output is streamed alongside the BASIC for easier low level analysis.

 

Here is the latest release of vwB with support for the IDE:

vwBASIC.zip

 

I will update the Virtual World BASIC web site later this week (server upgrade).

 

Hope bB programmers have some fun with this! :)

  • Like 4
Link to comment
Share on other sites

How can I use it with jEdit text editor?

You can use Jedit and run the compiler from the shell (cmd or powershell) and it will still compile and launch the ROM in Stella.

 

I use notepad this way, but Jedit will let you integrate the compiler via a shell macro if you want to use it as a full IDE.

  • Like 1
Link to comment
Share on other sites

This sounds really cool. I would like to learn assembly at some point. This may help. Thank you.

It is beyond simple to learn the 6502's ASM. It really really is!

You only need to know two instructions to do everything really, but only knowing two wont lead to very elegent code.

LDA #$xx
STA #$xx
 
xx is any hex value between 00 and FF
If you look at VCS.h for the DASM VCS compiler includes it has a table of names assigned to hex values. 
So if you want to store hex FF into the color for player 0 and AA into the graphics of player 0
you would do this:
 
;Semicolon is used for comments in DASM and are discarded during compile time
 LDA #$FF       ;This says LoaD Accumulator with a hex value, hex is declared with #$ regular 0-255 uses just the hash LDA #255 like so
 STA COLUP0     ;STore whats in the Accumulator into COLoUr Player 0, in this case 255 or FF, will go into the player0s color
 LDA #$AA       ;LoaD the Accumulator with hex value AA
 STA GRP0       ;Store this value into GRaPhics of Player 0
 
That is all you need to make the VCS do stuff, but if you want things more fancy and in sync with the TV you will need to know how to repeat code parts with branching:
 
;Place a starting counter outside the loop above the label
 LDY #192   ;LDY will load the Y register, LDX loads the X register, and LDA is for loading values into the Accumulator
Loop:      ;Simple labels use a colon to say hey mark the address here so code can jump over to me when needed
 STA WSYNC  ;Store anything into WSYNC will make the VCS wait until the scanline is finished
 STY COLUBK ;Store something into the background color, in this case its the current value in the Y register
 DEY        ;Y and X registers can be incremented by 1 or decremented by 1, this is DEcrement Y
 BNE Loop   ;Branch if Not Equal says if whatever instruction was done last made the value zero then let them pass to the instructions below, otherwise we need to jump to Loop label and do this again
 
Now its just a matter of figuring out what you want to stick into the VCS addresses and placing values into them at the proper times.

You can do alot with only a small bit of code, the 6502 is very simple and easy to learn.

Edited by ScumSoft
Link to comment
Share on other sites

You can use Jedit and run the compiler from the shell (cmd or powershell) and it will still compile and launch the ROM in Stella.

 

I use notepad this way, but Jedit will let you integrate the compiler via a shell macro if you want to use it as a full IDE.

That's what I want to do, integrate the compiler code that you included to jEdit, I thought it will be quite similar to integrate it as I did with the batariBasic compiler but it isn't that easy, because for some reason jEdit doesn't have assembly 6502, Imma do my best trying to integrate it and I'll tell if I succeeded

Link to comment
Share on other sites

Actually I have one question, will the compiler work on linux? xD

Yes it's written in PowerShell - you can install either Microsoft's PowerShell for Linux or the open source clone, any version should work.

 

Very cool you are integrating it with JEdit, look forward to hearing how that works :)

Link to comment
Share on other sites

When VisualbB hit the scene that was when I got serious about batari BASIC programming. I cannot understate how much an included IDE increases potential userbase - especially with high level tools.

 

Since vwBASIC includes support for SuperCharger i wonder if there are any plans for a kernel that supports hi res multi color backgrounds and sprites? :) I'd love to make a game that looks like a full fledged SuperCharger title.

  • Like 1
Link to comment
Share on other sites

When VisualbB hit the scene that was when I got serious about batari BASIC programming. I cannot understate how much an included IDE increases potential userbase - especially with high level tools.

 

Since vwBASIC includes support for SuperCharger i wonder if there are any plans for a kernel that supports hi res multi color backgrounds and sprites? :) I'd love to make a game that looks like a full fledged SuperCharger title.

Those would be cool features to add, multi color backgrounds first maybe :)

 

But not for awhile, I'm too busy having fun coding BASIC games with the IDE! Coding goes so fast with BASIC going to Assembly feels like the snow in Enduro.

Link to comment
Share on other sites

I extracted the files to c:\vwBASIC, but the readme file doesn't say what to do next. Oh, I see, there is more in section 9:

1. Load the PowerShell ISE and select the "show script pane right" icon to configure your environment.
2. Load the c:\vwBASIC\vwBASIC_Compiler.ps1 compiler script.
3. Load the c:\vwBASIC\Program.txt BASIC program.
4. Edit the program and save your changes.
5. Select the vwBASIC_Compiler.ps1 tab and press Play to compile

 

Where is PowerShell ISE?

Link to comment
Share on other sites

I extracted the files to c:\vwBASIC, but the readme file doesn't say what to do next. Oh, I see, there is more in section 9:

 

 

Where is PowerShell ISE?

Most Windows systems have it installed under administrative tools. If you are running XP you may have to download it from Microsoft (free). You can also launch the IDE directly by running powershell_ise.exe.

Link to comment
Share on other sites

Most Windows systems have it installed under administrative tools. If you are running XP you may have to download it from Microsoft (free). You can also launch the IDE directly by running powershell_ise.exe.

 

Thanks. I'm using Windows 8, so I don't know where anything is on this computer. I right click on the little Windows thingy where the Start button used to be and I get a list of what seems like useless crap. I put "PowerShell ISE" in the weird search thing that pops up on the right side and found it that way.

 

When I select the vwBASIC_Compiler.ps1 tab and press Play to compile, I get this message:

 

. . . cannot be loaded because running scripts is disabled on this system. For more information, see about_Execution_Policies.
Link to comment
Share on other sites

 

Thanks. I'm using Windows 8, so I don't know where anything is on this computer. I right click on the little Windows thingy where the Start button used to be and I get a list of what seems like useless crap. I put "PowerShell ISE" in the weird search thing that pops up on the right side and found it that way.

 

When I select the vwBASIC_Compiler.ps1 tab and press Play to compile, I get this message:

 

RT enter this command to get rid of that message:

set-executionpolicy -scope CurrentUser -ExecutionPolicy RemoteSigned

 

Agree about the useless lists replacing Start :)

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...
 Share

  • Recently Browsing   0 members

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