Jump to content

Photo

Atari Dev Studio for Homebrew Development [Release]

batari Basic 7800basic Assembly Homebrew Developers

30 replies to this topic

#1 mksmith OFFLINE  

mksmith

    Chopper Commander

  • 141 posts
  • Location:Melbourne, Australia

Posted Fri Apr 19, 2019 6:24 AM

Welcome to Atari Dev Studio for designing homebrew games for the Atari 8-bit systems (Atari 2600 and 7800). Atari Dev Studio is a one-stop-shop for any programmer and includes a number of built-in features to allow you to design, develop and test games for your favourite system. Get started with batari Basic (2600) or 7800basic (7800) using easy to learn BASIC-like languages or go hard-core with assembly using dasm. During development test your creation using the Stella (2600) or A7800 (7800) emulators right from within Atari Dev Studio.

ataridevstudio-emulator.png

Requirements
Atari Dev Studio is an extension for Microsoft's cross-platform IDE Visual Studio Code and will run on the Windows, Linux and macOS platforms. The latest releases of batari Basic, 7800basic, dasm, Stella and A7800 are included so you can begin coding straight after installing the extension.
 
Features
Atari Dev Studio includes the following features:
  • Develop your game on Windows, Linux or macOS
  • Compile source code for your Atari 2600 or 7800 using batari Basic, 7800basic or dasm
  • Optionally launch and test your game using the Stella (2600) or A7800 (7800) emulators
  • Built-in Sprite Editor (also suitable for tiles and other objects) [preview]
  • Manage your project using the File Explorer or version-control your source code directly with GitHub (and others) using the built-in features of the Visual Studio Code platform.
  • Provide references to your own specific releases of each language or emulator rather than use the includes ones via the Settings.
Additional features are planned for the future. At this time the focus is on the core functionality and ensuring full cross-platform support.
 
Installing Atari Dev Studio

What is Visual Studio Code?
Visual Studio Code (VS Code) is a streamlined code editor with support for development operations like debugging, task running, and version control. It aims to provide just the tools a developer needs for a quick code-build-debug cycle and leaves more complex workflows to fuller featured IDEs, such as Visual Studio.

Which OSs are supported?
VS Code is a cross-platform application which runs on Windows, Linux and macOS. See requirements for the supported versions.

Note: Linux users on 64-bit systems will be required to install the 32-bit compatibility libraries on your system to ensure everything will run as expected.

Installing the extension
Once you have installed VS Code (available here), open the VS Code program and complete the following:
  • From the Activity Bar, click the Extensions button to display the Extensions window.
  • From the Extensions window, type Atari into the Search box and press Enter to display the list of available extensions.
  • From the list of available extensions, locate Atari Dev Studio and click the green Install button.
ataridevstudio-installation.png
 
Updating the extension
Updates will be regularly made available and will be announced via the AtariAge forum (you will also be notified in VS Code). To update to the latest release:
  • From the Activity Bar, click the Extensions button to display the Extensions window.
  • From the Extensions window, search the Enabled list, locate Atari Dev Studio and click the Update button.
Note: It is recommended you restart VS Code after installing an update.
 
Using Atari Dev Studio
 
Compiling your program
To display the available extension features press CTRL+SHIFT+P to display the Command Palette. From the command palette prompt type adv to short-list the available options:
  • ads: Open the Welcome page
  • ads: Compile source code
  • ads: Compile source code and run in emulator
ataridevstudio-commandpalette.png
 
Language Selection
When you load a file the initial language will be chosen based on the file extension.  For example:
  • batari Basic (.bas, .bb) [Default for .bas files]
  • 7800basic (.bas, .78b)
  • dasm (.dasm, .asm, .a, .h) 
To change a language you can click on the Status Bar Language selector and a list will be shown allowing you to choose another language. Optionally in the Settings you will be able to either let the extension choose based on the active language or set a specific language to always compile against.
ataridevstudio-languageselector.png
 
Status Bar
Apart from using the Command Palette to select compilation, there are a number of short-cut buttons on the Status Bar allowing you to:
  • Display the extension version (might be useful at times)
  • Open the Welcome page
  • Open the Sprite Editor
  • Compile source code
  • Compile source code and run
ataridevstudio-statusbar.png
 
Note: The short-cut buttons on the Status Bar can be turned off via the Settings.
 
Sprite Editor [preview]
Atari Dev Studio includes a simple and easy to use Sprite Editor allowing you to create sprites, tiles and other objects for use in your projects. It has the following features:
  • New Project wizard allowing you to select the size, region (palette) and total colors of your sprites
  • Load and Save projects allowing you to save and come back to on-going work
  • Editing features such and palette selector, zoom, pen, eraser, fill and move modes
  • Ability to manage your sprites in a sortable list with options to copy, paste, duplicate and delete
  • Export sprites to png (compatible with 7800basic 3+1 and 12+1 image requirements)
  • More features are planned...
ataridevstudio-spriteeditor.png
The Sprite Editor is based on Spritemate by Ingo Hinterding (GitHub) and was suggested by RandomTerrain for inclusion in Atari Dev Studio. I have customised the source to provide the required features necessary for editing sprites, tiles and objects for the Atari platforms. This work is currently in preview and will be on-going until all required features have been added.

Note: The Sprite Editor is currently configured for working with 7800basic images.

Settings
There are a number of compiler, emulator and editor configuration options available in Atari Dev Studio which can be changed via the Settings (Preferences -> Settings -> Extensions -> Atari Dev Studio).

This is a preview
This software is currently in preview and contains the following missing or untested features:
  • [macOS] Stella emulator is missing. You will be required to provide your own path to Stella for the time-being (via the Settings).
  • [macOS] 7800basic and the A7800 emulator is untested
  • [Linux] Potential for missing packages (On Ubuntu 18.04.02 x64 I have been required to install a number)
I don't currently have direct access to a macOS machine to finalise feature integration but will do so in the near future. The previous incarnation of this extension (containing batari Basic and dasm) has been tested by users on macOS and as the process is very similar to Linux I do expect the extension to function correctly.
 
Debugging the extension
During the development phase of the extension I've added some developer output to assist with any issues that may appear.  To view this output, open the VS Code Developer Tools by selecting Help -> Toggle Developer Tools from the menu, and in the debugger window ensure the Console tab is activated.  This information may help identify the area where the extension is failing to process as expected.

Known Issues
There are currently no known feature issues. If you find a problem please raise an issue on GitHub or contact mksmith at the AtariAge community.

Acknowlegments
This extension is only available due to the great people of the AtariAge community who have created these tools to help developers build their vision. Special thanks to the following for either allowing the inclusion of their tools or for their ongoing help and encouragement:
  • 7800basic - Mike Saarna (RevEng)
  • batari Basic - Fred 'batari' Quimby
  • dasm - the many contibutors
  • Stella emulator - Stephen Anthony (stephena)
  • A7800 emulator - Mike Saarna (RevEng) and Trebor
  • Muddyfunster, TwentySixHundred, Lillapojkenpåön and vbauer for thier additional testing and bug-reporting of the previous incarnation of this extension for batari Basic.
  • Mats Engstrom (SmallRoomLabs) for his valued testing, suggestions and enhancements to Atari Dev Studio
  • The AtariAge community including Albert, RevEng, Random Terrain, Gemintronic, Karl G and ZeroPage Homebrew
Languages
Atari Dev Studio includes the following programming languages:

batari Basic (release BB.1.1d.reveng41)
batari Basic created by Fred 'batari' Quimby is a BASIC-like language used in the creation of Atari 2600 games. batari Basic is compiled to generate a binary file that can by used on actual Atari 2600 VCS hardware via cartridge (such as a Harmony or UNO cart) or by using an Atari 2600 VCS emulator such as Stella.

batari Basic is an external project and can be downloaded separately from here. Further information is about this release is available here at AtariAge.

7800basic (release 0.6 Jul 12 2017 22:46:35)
7800basic is a BASIC-like language for creating Atari 7800 games. It is a compiled language that runs on a computer, and it creates a binary file that can be run with an Atari 7800 emulator, or the binary file may be used to make a cartridge that will operate on a real Atari 7800. 7800basic is derived from batari basic, a BASIC-like language for creating Atari 2600 games. Special thanks to the bB creator, Fred Quimby, and all of the the bB contributors!

7800basic is included as part of this extension with many thanks to Mike Saarna (RevEng). 7800basic is an external project and can be downloaded separately here. Further information about this release is available here at AtariAge.

dasm (release 2.20.11 - 20171206)
dasm is a versatile macro assembler with support for several 8-bit microprocessors including MOS 6502 & 6507, Motorola 6803, 68705 & 68HC11, Hitachi HD6303 (extended Motorola 6801), and Fairchild F8. Matthew Dillon started dasm in 1987-1988. Olaf 'Rhialto' Seibert extended dasm in 1995. Andrew Davie maintained dasm in 2003-2008. During all this time, several other versions of dasm sprung up all over the net as well, making the exact chronology quite complicated. Peter Froehlich started maintaining dasm in 2008, hoping (against hope) to unify the various strands of development a little, and to maybe give dasm another 20 years of productive life. :-)

Emulation
Atari Dev Studio includes the following emulators for testing purposes:

Stella (release 6.0)
Stella is a multi-platform Atari 2600 VCS emulator released under the GNU General Public License (GPL). Stella was originally developed for Linux by Bradford W. Mott, and is currently maintained by Stephen Anthony. Since its original release several people have joined the development team to port Stella to other operating systems such as AcornOS, AmigaOS, DOS, FreeBSD, IRIX, Linux, OS/2, MacOS, Unix, and Windows. The development team is working hard to perfect the emulator and we hope you enjoy our effort.

Stella is included as part of this extension with many thanks to Stephen Anthony. Stella is an external project and can be downloaded separately here. If you enjoy using Stella place consider donating to ensure it's continued development.

A7800 (release 188-03)
A7800 is a fork of the MAME Atari 7800 driver, with several enhancements added:
  • Support for emulation of Proline Joysticks, VCS Joysticks, Lightguns, Paddles,
  • Driving Controllers, Keypads, Trak-Balls, Amiga Mice, and ST Mice.
  • Maria DMA timing has been improved further, with the addition of accurate DMA hole penalties.
  • Improved saturated/normalized colors with palette selection.
  • Streamlined UI including menu options to have an Atari 7800 system focus.
  • A bug in the existing RIOT emulation has been fixed.
  • MAME compatibility and syntax has been maintained, to allow for the reuse of MAME configuration files and front-ends.
A7800 is included as part of this extension with many thanks to Mike Saarna (RevEng). A7800 is an external project and can be downloaded separately here.
 
Releases
20190522 - Build v0.2.1
Sprite Editor
  • Fixed an issue selecting a palette color
  • Indented spinner value on New Project wizard to match combobox
20190521 - Build v0.2.0
  • Updated 7800basic compilation routine to validate for additional errors and added cleanup of 7800hole.x.asm files after compilation
  • Changes to RemoveCompilationFilesAsync routine as the CleanUpCompilationFiles flag wasn't working as expected
  • Added missing 7800basic keywords: converttobcd, extrawide, joy0fire, joy0fire, joy0any, joy1any
Sprite Editor
  • Added New Project wizard to configure your sprites allowing you to select the size, region (palette) and total colors
  • Added additional messaging to status bar when using features
  • Fixed issue where toolbar was not updated properly after loading project
20190513 - Build v0.1.9
  • #13 [Done] - SmallRoomLabs updated hover text to markdown format [thanks SmallRoomLabs]
  • Updated 7800basic compilation routine to validate for additional errors
Sprite Editor
  • Updated Project area to store loaded file and auto save or prompt
  • Added menu bar back to display filename of active file
  • Updated Palette selector to display user colors across then down to allow for future expansion
  • Changes to file format to allow sprite size to be stored
  • Further internal changes
20190510 - Build v0.1.8
  • #12 [Done] - SmallRoomLabs added a process to display hover tooltips to dasm language for 6502 and VCS opcodes [thanks SmallRoomLabs]
  • Extended hover tooltip process to work across all languages
  • Minor internal changes to Sprite Editor for future enhancements
20190506 - Build v0.1.7
20190428 - Build v0.1.6
20190425 - Build v0.1.5
20190421 - Build v0.1.2 & v0.1.3
20190420 - Build v0.1.1
20190419 - Build v0.1.0
  • Initial release
Manual download

Edited by mksmith, Today, 3:50 AM.


#2 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 141 posts
  • Location:Melbourne, Australia

Posted Sat Apr 20, 2019 5:13 AM

A new release (v0.1.1) is now available with the following changes:

  • Added new Help references and Learn areas for batari Basic and 7800basic to Welcome page
  • Removed templates from Welcome page (for now)
  • Updated readme with more information about the product
  • Updated all internal references to accessing the settings to a const to better maintain future changes

Issues

  • #1 [UnderReview] - Added compiler notification to help with permission error when compiling dasm on macOS (thanks SmallRoomLabs)
  • #2 [Fixed] - Removed popup message (thanks SmallRoomLabs)
  • #3 [Fixed] - Updated breadcrumb to Settings to correct path and catered for cross-platform (thanks SmallRoomLabs)
  • #4 [Fixed] - Updated syntax highlighter (thanks SmallRoomLabs)


#3 BNE Jeff OFFLINE  

BNE Jeff

    Moonsweeper

  • 385 posts
  • Location:$5787

Posted Sat Apr 20, 2019 9:54 AM

Is this new?  I just installed it this morning and was wondering why I never heard of it.  Its awesome!



#4 scitari OFFLINE  

scitari

    Chopper Commander

  • 150 posts
  • Keeping bit real
  • Location:Philadelphia

Posted Sat Apr 20, 2019 5:03 PM

Thanks for your hard work on this. I look forward to trying it out.



#5 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 141 posts
  • Location:Melbourne, Australia

Posted Sat Apr 20, 2019 5:32 PM

Is this new?  I just installed it this morning and was wondering why I never heard of it.  Its awesome!

 

Thanks! I started an extension for batari Basic (and dasm) in January as editing in vBB got a little difficult for larger projects (plus It was able to be cross-platform).  Since then I had a number of requests to add 7800basic  so I decided to restart with a new extension and here we are! 

 

Thanks for your hard work on this. I look forward to trying it out.

 

No probs - been great learning Typescript actually! Hope you enjoy it!



#6 eightbitwhit OFFLINE  

eightbitwhit

    Combat Commando

  • 9 posts
  • Location:Louisville, KY

Posted Sat Apr 20, 2019 5:33 PM

Absolutely amazing.  Thank you so much for using VS Code and making this cross-platform.  Huge props!



#7 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 141 posts
  • Location:Melbourne, Australia

Posted Sat Apr 20, 2019 6:37 PM

Absolutely amazing.  Thank you so much for using VS Code and making this cross-platform.  Huge props!

Pleasure! Just hoping it can help the community of homebrew developers! Cross-platform is always a major issue with most IDEs/tools so it's great something like VS Code is available!  



#8 Greg2600 OFFLINE  

Greg2600

    River Patroller

  • 3,139 posts
  • Location:NJ

Posted Sat Apr 20, 2019 6:41 PM

Very impressive!



#9 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 141 posts
  • Location:Melbourne, Australia

Posted Sat Apr 20, 2019 6:41 PM

A new release (v0.1.2) is now available with the following changes:

  • Added option in settings to show/hide commands on Status Bar (thanks SmallRoomLabs)
  • Updated readme with information about debugging

Issues

  • #1 [Fixed] - Added compiler notification to help with permission error when compiling dasm on macOS (thanks SmallRoomLabs)
  • #5 [Done] - Usage of status line (thanks SmallRoomLabs)

 

[Update] We have final approval! I'll update the instructions with some images on how to install.


Edited by mksmith, Sat Apr 20, 2019 6:50 PM.


#10 matseng OFFLINE  

matseng

    Combat Commando

  • 4 posts

Posted Sun Apr 21, 2019 1:09 AM

[I'm SmallRoomLabs at Github] and I have to agree with the previous posters that the ADS is a lovely addition to both the VSC and the Atari ecosystems (hmm... I really dislike that word). 

I picked up the Racing the Beam-book at a flea market some weeks ago and that got me interested in the 2600 so I tried out some coding in the 8bitworkshop IDE for a bit, but even if the live-compile-reload is a cool feature the editor is not fun at all to use.  So now with the release of this VCS extension  my journey of coding for the 2600 will be a lot more enjoyable. (Enough for me to spend some money at Ebay for a Sixer with two sets of controllers ^__^ )


Edited by matseng, Sun Apr 21, 2019 3:13 AM.


#11 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 141 posts
  • Location:Melbourne, Australia

Posted Sun Apr 21, 2019 2:40 AM

A new release (v0.1.3) is now available with the following changes:

  • Updated 7800basic language definition with all (known) keywords, commands and variables. Note: there is every chance I have either missed some or labled incorrectly.
  • Update readme to include imore information about installing and a note about turning off the short-cut buttons on the Status Bar


#12 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 141 posts
  • Location:Melbourne, Australia

Posted Sun Apr 21, 2019 2:43 AM

[I'm SmallRoomLabs at Github] and I have to agree with the previous posters that the ADS is a lovely addition to both the VSC and the Atari ecosystems (hmm... I really dislike that word). 

I've picked up the Racing the Beam-book at a flea market some weeks ago and that got me interested in the 2600 so I tried out coding for it the 8bitworkshop IDE for a bit, but even if the live-compile-reload is a cool feature there the editor is not fun at all to use.  So now with the release of this VCS extension  my journey of coding for the 2600 will be a lot more enjoyable. (Enough for me to spend some money at Ebay for a Sixer with two sets of controllers ^__^ )

 

Thanks so much for you assistance and input into the changes over the past few days.  Very much appreciated!

 

Yeah all this got me buying a Vader first up then picked up a non-working light sixer which I repaired (also got 3 jrs I repaired but have yet to list).  Desperate to get a 7800 (have just missed out on a few - pretty expensive here in Australia). So much fun!



#13 Dalta OFFLINE  

Dalta

    Space Invader

  • 21 posts
  • Location:France

Posted Tue Apr 23, 2019 1:24 PM

Thanks for your work. Looking forward to trying it out.



#14 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 141 posts
  • Location:Melbourne, Australia

Posted Wed Apr 24, 2019 9:43 AM

A new release (v0.1.5) is now available with the following changes:

  • Introduction of a new feature  :grin:  It cannot do anything other than the basics - just wanted to see if it runs OK on other PCs. 

Edited by mksmith, Thu Apr 25, 2019 5:17 AM.


#15 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 141 posts
  • Location:Melbourne, Australia

Posted Thu Apr 25, 2019 4:53 AM

So this release contains the introduction of a Sprite Editor (basic functionality only). The Sprite Editor is based on Spritemate by Ingo Hinterding (github) and was suggested by RandomTerrain. I've taken the original source and rebuilt and restructured it. It cannot do anything other than the basics - just wanted to see if it runs OK on other PCs.

You can open it either from the Status Bar or via the Welcome page.
devstudio-spriteeditor.png

 

Current features

Moveable windows

Palette color selector (currently 7800 NTSC colors)

Multiple sprites (New, Copy/Paste, Duplicate, Re-order (drag/drop), Delete)

Draw, Erase, Fill, Move, Undo, Redo, Zoom

 

Under development

Load/Save (ie workspace) - hoping to integrate into VS Code dialogs if I can

Export to png (strip of images), assembly and other formats

Features specific to the 2600 and 7800 ie. sprite sizes, palettes etc

 

Future

Animator

Additional editing features ie. lines, circles etc


Edited by mksmith, Thu Apr 25, 2019 5:17 AM.


#16 Dalta OFFLINE  

Dalta

    Space Invader

  • 21 posts
  • Location:France

Posted Thu Apr 25, 2019 3:47 PM

Is there a way to have the settings from the previous session become the default settings? i.e. The default programming language is currently bataribasic, currently I have to re-set the language to 7800basic every time I open Code Studio. This is also true of the settings for A7800, i.e. I have to reconfigure my joypad controls on A7800 every time I open Code Studio. Is there some way to set these as default I haven't seen, or is there some way it could be implemented?

 

Also, the A7800 launches as the NTSC 7800, is there a way to get the PAL version to be what launches instead?

 

Thanks for the work, I haven't installed the sprite editor version, but that looks really useful.



#17 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 141 posts
  • Location:Melbourne, Australia

Posted Thu Apr 25, 2019 5:20 PM

Is there a way to have the settings from the previous session become the default settings? i.e. The default programming language is currently bataribasic, currently I have to re-set the language to 7800basic every time I open Code Studio. This is also true of the settings for A7800, i.e. I have to reconfigure my joypad controls on A7800 every time I open Code Studio. Is there some way to set these as default I haven't seen, or is there some way it could be implemented?

 

Also, the A7800 launches as the NTSC 7800, is there a way to get the PAL version to be what launches instead?

 

Thanks for the work, I haven't installed the sprite editor version, but that looks really useful.

 

To set the default language as 7800basic there are 2 ways:

  • Make the file extension .78b (batari Basic can also use .bb)
  • Change the VS Code settings.  Open your file, click on the Language Selector on the Status Bar (bottom right will say batari Basic) and choose Configure File Association for '.bas'... and then select 7800basic from the list. This will then open to 7800basic always
    devstudio-languageselection.png

The main issue I have is historically both bB an 7800basic use the .bas file extension so one has to be the default in terms of which one VS Code chooses but in the end you can make it work by doing one of the above.

 

As for A7800 you can default the specific region via the settings (Preferences > Settings -> Extensions -> Atari Dev Studio).  Locate the Emulator > A7800: Region option and you can set the various NTSC or PAL requirements.

devstudio-settings.png

 

For the actual A7800 emulator configuration I'm not entirely sure why that wouldn't save (it's just MAME).  Which OS are you on as for Linux and macOS I do need to set the chmod properties for certain things...  Regardless I'll have a play around and see if I can determine.


Edited by mksmith, Thu Apr 25, 2019 5:23 PM.


#18 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 141 posts
  • Location:Melbourne, Australia

Posted Sat Apr 27, 2019 8:06 AM

A new release (v0.1.6) is now available with the following changes:

 

Sprite Editor

  • Added ability to load and save sprites
  • Added (auto) load and save of the workspace configuration (window layout)
  • Added ability to select and hold down mouse button to change palette colors on the fly for selected color
  • Fixed issue where holding down mouse button and leaving the sprite editing area left drawing mode on

Appears to be loading/saving OK on Windows and Linux but it's reasonably complex in that I need to communicate back and forwards using event listeners between VS Code and the Webview running the editor. We'll push on to saving .pngs out so I can test out 7800basic with them.



#19 DirtyHairy OFFLINE  

DirtyHairy

    Dragonstomper

  • 545 posts
  • Location:Germany

Posted Sat Apr 27, 2019 4:30 PM

in that I need to communicate back and forwards using event listeners between VS Code and the Webview running the editor. We'll push on to saving .pngs out so I can test out 7800basic with them.

 

 

In case it helps: I have approached the same problem in 6502.ts (emulation is running on a web worker, and I need communicate between worker and main thread) with a thin layer that builds a promise-based RPC layer on postMessage. I have published the code as a library on NPM: https://www.npmjs.co...kage/worker-rpc


Edited by DirtyHairy, Sat Apr 27, 2019 4:31 PM.


#20 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 141 posts
  • Location:Melbourne, Australia

Posted Sun Apr 28, 2019 12:34 AM

 

 

In case it helps: I have approached the same problem in 6502.ts (emulation is running on a web worker, and I need communicate between worker and main thread) with a thin layer that builds a promise-based RPC layer on postMessage. I have published the code as a library on NPM: https://www.npmjs.co...kage/worker-rpc

 

@DirtyHarry - thanks will check that out!



#21 sgrddy OFFLINE  

sgrddy

    Chopper Commander

  • 149 posts
  • Location:McMurray, PA

Posted Tue Apr 30, 2019 5:51 AM

That's absolutely badass. I cant wait to try it.
Very nice work.

#22 Dalta OFFLINE  

Dalta

    Space Invader

  • 21 posts
  • Location:France

Posted Tue Apr 30, 2019 9:31 PM

 

To set the default language as 7800basic there are 2 ways:

  • Make the file extension .78b (batari Basic can also use .bb)
  • Change the VS Code settings.  Open your file, click on the Language Selector on the Status Bar (bottom right will say batari Basic) and choose Configure File Association for '.bas'... and then select 7800basic from the list. This will then open to 7800basic always
    attachicon.gifdevstudio-languageselection.png

The main issue I have is historically both bB an 7800basic use the .bas file extension so one has to be the default in terms of which one VS Code chooses but in the end you can make it work by doing one of the above.

 

As for A7800 you can default the specific region via the settings (Preferences > Settings -> Extensions -> Atari Dev Studio).  Locate the Emulator > A7800: Region option and you can set the various NTSC or PAL requirements.

attachicon.gifdevstudio-settings.png

 

For the actual A7800 emulator configuration I'm not entirely sure why that wouldn't save (it's just MAME).  Which OS are you on as for Linux and macOS I do need to set the chmod properties for certain things...  Regardless I'll have a play around and see if I can determine.

 

Thanks for that help. I don't know what happened with configuring the controller inputs, the first time or two I loaded Studio Code it didn't remember the settings, but then after that, it did. So, problem solved I guess.



#23 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 141 posts
  • Location:Melbourne, Australia

Posted Sun May 5, 2019 9:17 PM

A new release (v0.1.7) is now available with the following changes:

Issues

  • #6 [Done] - Added new drop-down selector in settings to choose what you want to display on the Status Bar (Full, Minimum, None) [thanks SmallRoomLabs]
  • #7 [Done] - Autoclose any existing Stella windows before opening a new one (new option in settings to override) [thanks SmallRoomLabs]
  • #8 [Fixed] - When a dasm compilation fails clean up files generated by compiler (.sym/.bin/.lst) [thanks SmallRoomLabs]
  • #9 [Fixed] - Fixed issue autosaving files before compile (async) [thanks SmallRoomLabs]
  • #11 [Done] - Updated label determination in dasm assembly syntax [thanks SmallRoomLabs]

Sprite Editor

  • Added ability to export all sprites in project to .png (2 bit 7800basic)
  • Added ability zoom editor with mousewheel
  • Added ability to set transparent background color in editor (not exported to .png) to help when designing sprites

Edited by mksmith, Thu May 9, 2019 7:48 PM.


#24 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 141 posts
  • Location:Melbourne, Australia

Posted Thu May 9, 2019 7:47 PM

A new release (v0.1.8 ) is now available with the following changes:

  • #12 [Done] - SmallRoomLabs added a process to display hover tooltips to dasm language for 6502 and VCS opcodes [thanks SmallRoomLabs]
  • Extended hover tooltip process to work across all languages
  • Minor internal changes to Sprite Editor for future enhancements

Thanks to Mats (SmallRoomLabs) for investigating the hover tooltip process in VS Code. Thanks to his great work we now have tooltips (just hover the mouse over the opcode/keyword to view) for 6502 and VCS opcodes (all languages):

devstudio-hovertooltips.png

 

Now I need to build upon this for extra information in bB and 7800basic as well as some proper intellisense (will come after the Sprite Editor is done).



#25 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 141 posts
  • Location:Melbourne, Australia

Posted Mon May 13, 2019 7:27 AM

A new release (v0.1.9) is now available with the following changes:

  • #13 [Done] - SmallRoomLabs updated hover text to markdown format [thanks SmallRoomLabs]
  • Updated 7800basic compilation routine to validate for additional errors

Sprite Editor

  • Updated Project area to store loaded file and auto save or prompt
  • Added menu bar back to display filename of active file
  • Updated Palette selector to display user colors across then down to allow for future expansion
  • Changes to file format to allow sprite size to be stored
  • Further internal changes






Also tagged with one or more of these keywords: batari Basic, 7800basic, Assembly, Homebrew, Developers

0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users