MSX Application Templates for MS Visual Studio

Page 1/5
| 2 | 3 | 4 | 5

By DamnedAngel

Master (184)

DamnedAngel's picture

05-01-2020, 21:44

Folks,

I am working in MS Visual Studio templates for MSX BIN, ROM and MSX-DOS projects. I have just released the first version of the MSX BIN Template.

With it, you can just use VS's File | New | Project option to select MSX BIN Application and the IDE will spawn a brand new minimalistic (Hello World) project ready to compile/assemble - and to be extended with whatever you fancy in ASM or C. Just select the Build option and you will have a compiled, BLOADable MSX BIN executable.

The template also features:
- Support for Debug/Release profiles;
- OpenMSX symbol file exporting;
- OpenMSX Profiling;
- Addition of external libraries, ASM and C/Headers source code without fiddling with the make script;
- Integration with C-Fusion library, since it uses SDCC/sdasz80;
- Make/Make All/Make Clean actions.

Get it here:

http://angelo.eng.br/msx/danilo/Visual%20Studio%20Templates/MSX%20BIN%20Application.zip

An incipient documentation is being contructed here:
https://docs.google.com/document/d/1Y2rTTMBN08Au59e44pzdX0ptVWfLfMgG1gp2e-KUVIE/edit?usp=sharing

Although the doc still lacks important parts (like the project structure), it already has a Getting Started section featuring the following guidelines:

  • Setting up the environment
  • Creating your MSX BIN Application in VS
  • Building (compiling/assembling) your MSX BIN Application in VS
  • Running your MSX BIN Application
  • - Example 1: Running your program in WebMSX
  • - Example 2: Running your program in OpenMSX (with Catapult)

Although the documentation is incomplete, please let me know and any specific questions you may have and I will try to answer them. Also, feel free to give me any feedbacks on the project template and/or the documentation. I will do my best to solve any problems and release updates.

Teaser screenshots:






[]'s
Dan

Login or register to post comments

By ToriHino

Champion (493)

ToriHino's picture

05-01-2020, 22:22

Well done, that looks already very workable. Looking forward to the support for DOS and ROM files as well.

By tfh

Prophet (2185)

tfh's picture

05-01-2020, 22:52

Impressive... Maybe I'll have a look at it to see if I am smart enough to work with it Smile Smile

By konamiman

Paragon (1051)

konamiman's picture

06-01-2020, 18:24

Hey, that's an impressive project, but... I'm going to say my thing: would you please consider creating a GitHub repository for it instead of distributing it as a ZIP file + a GDoc? Easier to take a look at, easier to get feedback on possible issues and suggestions, and easier for yourself to maintain it and handle changes. Smile

By thegeps

Champion (417)

thegeps's picture

06-01-2020, 19:02

Will you add Glass assembler integration?

By DRomero

Expert (125)

DRomero's picture

06-01-2020, 19:09

Impressive!!

A few days back i was asking for something similar for Visual Studio Code, but this is x100 better!!

Thanks a lot!!

Smile

By DamnedAngel

Master (184)

DamnedAngel's picture

12-01-2020, 23:37

konamiman wrote:

Hey, that's an impressive project, but... I'm going to say my thing: would you please consider creating a GitHub repository for it instead of distributing it as a ZIP file + a GDoc? Easier to take a look at, easier to get feedback on possible issues and suggestions, and easier for yourself to maintain it and handle changes. Smile

Oh, yes: https://github.com/DamnedAngel/MSX-Templates-for-VisualStudio

I was eager to release the first version, so that some close friends could start using, and I ended up fast tracking the zip. But now you have the repo.
The documentation is still that gdoc, though. But I will migrate soon.

Thanks for the interest!!!

By DamnedAngel

Master (184)

DamnedAngel's picture

12-01-2020, 23:31

ToriHino wrote:

Well done, that looks already very workable. Looking forward to the support for DOS and ROM files as well.

I just released a new, much more robust version for the BIN format (see the following post) and MSX-DOS will be the next step. It definetely will demand changes in the build script and binary file format, but much will be reused also. Please gve me some more days and I will try to have MSX-DOS out.

Thanks for the interest!

By DamnedAngel

Master (184)

DamnedAngel's picture

12-01-2020, 23:36

thegeps wrote:

Will you add Glass assembler integration?

It is not in my horizon, but I am sure the build script can be adapted to use other assemblers. The whole project has a github now (https://github.com/DamnedAngel/MSX-Templates-for-VisualStudio). You can download and check the make.bat script. If you decide to dive in, I will definetely be happy to help you with that.

Does Glass have a C cross-compiler too?

By DamnedAngel

Master (184)

DamnedAngel's picture

12-01-2020, 23:49

Folks, I updated the MSX BIN template and documentation.
Now:

  • It supports the maind program (main()) in C. Just comment the reference for msxbinapp.s and uncomment the reference for msxbinapp.c in ApplicationSources.txt and the project becomes a C project.
  • It handles C and ASM files indistinctly. Wanna add more C source files? Declare them in ApplicationSources.txt and it's done. Wanna add more ASM source files? Declare them in ApplicationSources.txt and it's also done. The build script will take care of everything for you.
  • You can add, also indistinctly, C and ASM Libraries. Declarem them in LibrarySourcesApplicationSources.txt and it's done. Wanna add more ASM source files? Declare them in ApplicationSources.txt and it's also done. The build script will take care of everything for you.
  • It now includes two Hello World demos: one in C and one in ASM. Both supports being executed as BLOAD"MSXAPP.BIN",R and have an example of routine to be called with BASIC's DEFUSR/USR.
  • The project structure has been slightly changed and is more consistent and clean now.
  • All files have internal comments, so you can explore what's there to be used.
  • The documentation has been updated. Some instructions were corrected and some project structure information was added: https://docs.google.com/document/d/1Y2rTTMBN08Au59e44pzdX0ptVWfLfMgG1gp2e-KUVIE/edit?usp=sharing
  • The project now has a Github. Please do explore it... and criticize it!: https://github.com/DamnedAngel/MSX-Templates-for-VisualStudio

Please give it a go and let me know your thoughts about it!

By DamnedAngel

Master (184)

DamnedAngel's picture

13-01-2020, 02:00

Just correcting the bad writing of the previous post:

Folks, I updated the MSX BIN template and documentation.
Now:

  • It supports the main program (main()) in C. Just comment out the reference for msxbinapp.s and uncomment the reference for msxbinapp.c in ApplicationSources.txt and the project becomes a C project.
  • It handles C and ASM files indistinctly. Wanna add more C source files? Declare them in ApplicationSources.txt and it's done. Wanna add more ASM source files? Declare them in ApplicationSources.txt and it's also done. The build script will take care of everything for you.
  • You can add, also indistinctly, C and ASM Libraries. Declare them in LibrarySource.txt and it's done.
  • It now includes two Hello World demos: one in C and one in ASM. Both support being executed via BLOAD"MSXAPP.BIN",R and have an example of routine to be called with BASIC's DEFUSR/USR.
  • The project structure has been slightly changed, being more consistent and clean.
  • All files have internal comments, so you can explore what's there to be used.
  • The documentation has been updated. Some instructions were corrected and some information on project structure was added: https://docs.google.com/document/d/1Y2rTTMBN08Au59e44pzdX0ptVWfLfMgG1gp2e-KUVIE/edit?usp=sharing
  • A Github was created. Please do explore it... and criticize it!: https://github.com/DamnedAngel/MSX-Templates-for-VisualStudio

Please give it a go and let me know your thoughts about it!

Page 1/5
| 2 | 3 | 4 | 5