Jump to content
DZ-Jay

Introducing the IntyBASIC SDK

Recommended Posts

Thanks you Carl and Mr. Me

 

That helps out alot

 

 

Share this post


Link to post
Share on other sites

Also, the nice thing about IntyBASIC is that you can have assembly and BASIC together.  So for example if you write a lot of code but find that one of you BASIC subroutines is too slow, you can re-write in assembly and have BASIC call it.

Share this post


Link to post
Share on other sites

Hey there all, just checking, is the current version of IntyBASIC SDK version 1.1? I have done virtually no IntyBASIC anything in more than year, getting close to two years. Thought I would try jumping back in a bit but wanted to load up the latest versions of everything.  Thanks.

Share this post


Link to post
Share on other sites

I think the SDK mainly was managed by DZ-Jay who was incompatible with the new forum software so he isn't around any longer? Anyway, the SDK should be good but I see that it comes preloaded with IntyBASIC 1.2 while we're currently at version 1.4.1 and I believe an updated version might be released soon. It is not overly difficult to update the compiler within the SDK, but files tend to go into different locations than with the standalone compiler package.

Share this post


Link to post
Share on other sites

Thanks for the info. I've downloaded IntyBASIC 1.4.1 so I will start with that and see if I can get my my SDK put together correctly.

Share this post


Link to post
Share on other sites

FINALLY!

 

It's done.  It's out.  Thank goodness for that!

https://atariage.com/forums/topic/240526-introducing-the-intybasic-sdk/

 

I've updated the first post with the latest version of the IntyBASIC SDK 1.2.1.  It includes the latest version of IntyBASIC and the development tools, as well as many improvements from the last version.  It also now supports both Mac and Windows PCs.  Although there is no "installer wizard" for Mac, it comes with some very simple instructions that will get you going in a couple of minutes.

 

This release has been a few years in the making -- the Mac version was ready back in 2017 or so, and just lying around, waiting to be released.  I'm sorry it took so long to get it all out, but I hope you'll still be glad to have waited -- it gave me the opportunity to polish the tools and documentation and to make them even better than I expected.

 

I'm afraid this will be the last version of the SDK.  As some of you may already know, I am not able to access the AA site regularly, and I also have little time to spend on maintaining the distribution.  You may not be aware of it, but it is truly a lot of work to update the tools, test everything with ever newer versions of the compiler, etc., and to build the comprehensive installation packages for ease of use -- and all that for something that I do not even use myself (I have my own Assembly Language framework and don't use IntyBASIC at all).

 

That said, the entire SDK is open source, and all tools, documents, and examples I created for it are offered to the public domain; so anybody has the opportunity to pick up the torch and run with it.

 

And finally, although I'm not around regularly, I do occasionally stop by, so feel free to drop a note if you have problems or questions related to the SDK.  I can't guarantee when I will get to it, though, so you're better off posting publicly in the forum for others to see.  I may not be able to answer all your questions or requests, but I'm sure there are other, more knowledgeable people here that can help.

 

And with all that said and done, I bid you Godspeed, best of luck, and happy Intellivision thoughts -- but most of all, I invite you to enjoy and have fun making Intellivision games with the IntyBASIC SDK!

 

     Cheers!

      -dZ.

 

  • Like 4
  • Thanks 2

Share this post


Link to post
Share on other sites
On 6/14/2020 at 2:37 PM, DZ-Jay said:

I'm afraid this will be the last version of the SDK. 

[...]

That said, the entire SDK is open source, and all tools, documents, and examples I created for it are offered to the public domain; so anybody has the opportunity to pick up the torch and run with it.

Hi, maybe I'm dumb 😅 but I cannot find where to download sources... unless there are no sources to download of course, but as I understood you have a set of scripts/tools to create these packages so I thougth that the sources would be those scripts... 🙂

 

Regards,

Share this post


Link to post
Share on other sites
4 hours ago, Nibunnoichi said:

Hi, maybe I'm dumb 😅 but I cannot find where to download sources... unless there are no sources to download of course, but as I understood you have a set of scripts/tools to create these packages so I thougth that the sources would be those scripts... 🙂

 

Regards,

 

Of what, specifically, are you seeking sources?

 

The IntyBASIC SDK is mainly a pre-packaged, fully-contained and integrated development environment for Intellivision games.  It includes the as1600 assembler, the jzIntv emulator/debugger, and of course the IntyBASIC compiler -- all three which are maintained by others and offered under their own open source licenses.  The SDK integrates them with a set of command-line scripts and packages it all in a simple to install format, ready to use.

 

The sources for the assembler, emulator, and compiler are available from their respective distribution points.  You can find those in a few other threads around here if you are interested; below is a good place to start:

 

Regarding the so-called "SDK tools," these are mere shell scripts I created -- Perl on Mac and Command Batch on Windows -- so their source is the tool file itself, as it is interpreted.

 

The other component included are the sample projects.  All example programs in the SDK package, including the "intyB" tutorial, also include their IntyBASIC source.  As with the tool scripts, these are simple text files.

 

Regarding the packaging itself, it depends on the distribution:

  • For Windows, I use an application called Actual Installer Pro, which, alas, is not open source.  They do offer a free version, but it has some limitations, so I opted for the "Pro" version.  Obviously, I cannot distribute this application, for it is proprietary, but I can make the IntyBASIC SDK configuration project file available.  This is the set of rules and specific configuration for installing all files on the target machine.
     
  • For Macintosh, I did not use a packaging tool, for I did not have one available.  All I did was bundle everything into a compressed volume, laid out and packaged by hand.  Information on how to do this is freely available on the Web, and I can provide assistance for anybody who's interested.

In the end, the "source" of the package is precisely the same "IntyBASIC SDK" folder that the packages install; plus, in the case of Windows, the configuration project for Actual Installer Pro to create the package.

 

Is there something else you were looking for that I may have missed?  If you are interested in maintaining the SDK in the future, I'd be happy to offer any guidance you may need.  Just send me a PM.

 

     -dZ.

  • Like 1

Share this post


Link to post
Share on other sites
Posted (edited)
16 hours ago, DZ-Jay said:

Is there something else you were looking for that I may have missed?  If you are interested in maintaining the SDK in the future, I'd be happy to offer any guidance you may need.  Just send me a PM.

 

     -dZ.

My mistake, I thought you had some scripts to create the SDK tree, redistribute tools and stuff inside the relevant folders and pack it... I must've totally misunderstood how you did the job, sorry 😆 this could be useful for those willing to keep it up to date by themselves too.

On a side note, I'm working on a very small tool in my very little spare time, it is quite unrelated but it might point people to the SDK without having them come on the forum threads to download it... I wanted to put it in a repository of sort

Edited by Nibunnoichi

Share this post


Link to post
Share on other sites
4 hours ago, Nibunnoichi said:

My mistake, I thought you had some scripts to create the SDK tree, redistribute tools and stuff inside the relevant folders and pack it... I must've totally misunderstood how you did the job, sorry 😆 this could be useful for those willing to keep it up to date by themselves too.

On a side note, I'm working on a very small tool in my very little spare time, it is quite unrelated but it might point people to the SDK without having them come on the forum threads to download it... I wanted to put it in a repository of sort

 

Ah, I see.  No, the SDK is mostly a labour of love, put together by hand.  That's part of the reason I do not wish to continue supporting it: it's a lot of work for something I don't even use.

 

The work involved is in not only updating the compiler and assembler when new versions are released -- that's the easy part.  It involves re-building each sample program using the SDK tools, updating their sources as necessary to support new features or work-around bugs, and testing them individually to ensure the resulting ROMs still work as intended.

 

Also, the SDK tools themselves may need to be updated to take advantage of new features or to comply with changes in the underlying build tools -- followed by another round of testing to ensure it all still works.  This may lead to changes in the documentation as well.

 

Then, finally, comes packaging for distribution; which for Windows is mostly automatic, but for Mac is a bit more involved.

 

For people who just want to keep their local installation current with future releases of IntyBASIC, all they need to do is update the compiler in the "bin" folder, and the prologue and epilogue files in the "lib" folder.  That's it.

 

      -dZ.

Share this post


Link to post
Share on other sites

This may sound odd, when I try the Intybuild command it will only find .bas files that match the name of the project folder. I created a new folder on my own in the projects folder and copied some old files to it and renamed them and tried Intybuild and it says "Unable to find user or example project ...".

 

Is this new with 1.2 or am I misremembering or missing something? I created a new project and called it 2020_Stunt_Cycle.  If I have a file called 2020_Stunt_Cycle.bas then Intybuild works great.  If I try to build a file called Stunt_Cycle_20200719, it can't find it.  I used to keep all my versions together in a single folder.

 

I'm probably doing something wrong but thought I would I ask.  if possible, How do I get the intybuild to find my file regardless of the name or do I need a new project folder for each version?

Share this post


Link to post
Share on other sites
1 hour ago, fsuinnc said:

This may sound odd, when I try the Intybuild command it will only find .bas files that match the name of the project folder. I created a new folder on my own in the projects folder and copied some old files to it and renamed them and tried Intybuild and it says "Unable to find user or example project ...".

 

Is this new with 1.2 or am I misremembering or missing something? I created a new project and called it 2020_Stunt_Cycle.  If I have a file called 2020_Stunt_Cycle.bas then Intybuild works great.  If I try to build a file called Stunt_Cycle_20200719, it can't find it.  I used to keep all my versions together in a single folder.

 

I'm probably doing something wrong but thought I would I ask.  if possible, How do I get the intybuild to find my file regardless of the name or do I need a new project folder for each version?

That's always been like that, as far as I recall.  As the documentation describes, the tools are intended to be used together for projects created with the INTYNEW command.

 

The folder name corresponds to the name of the project, and so, it is expected to match the name of the BASIC source file, assembly file, and binary.

 

One new thing is that now it scans the Contributions and Examples folders as well as the Projects one, so that you can INTYBUILD and INTYRUN them too (which was an issue before).
 

If you want to build a file with a different name, you'll have to modify the scripts, or create new folders for each version.

 

Even better, I recommend you adopt a version control system, such as SubVersion, which allow you to the history of changes without having to create multiple folders and files all over the place.  For Windows, check out TortoiseSVN, which is a cinch to use. :)

 

  dZ.

 

 

Share this post


Link to post
Share on other sites

UPDATE:  I just looked through my version control and saw that an older version of the INTYBUILD script accepted a full filename instead of just a project name.  This was part of a feature that didn't really work that well, and turned out to complicate matters more, so it was removed later on.

 

Keep in mind that the point of the IntyBASIC SDK was to simplify the process of using IntyBASIC, so the whole tool chain was intended to abstract the filenames, while the programmer just works with projects.

 

I'm sorry that this affects your workflow.  Like I said before, creating different projects for each one would work -- but really, give TortoiseSVN a try, it's super easy to use, and it integrates with the Windows Explorer so committing a new version is as simple as right+clicking files or folders and choosing the appropriate command from the menu.

 

https://tortoisesvn.net/docs/nightly/TortoiseSVN_en/tsvn-quick-start.html

 

I can almost guarantee you that once you use a proper version control system, you'll never go back to just copy+paste files and timestamps.  It really is a superior mode of working. ;)

 

    -dZ.

Share this post


Link to post
Share on other sites

Not a problem and I have no complaints.  Thanks for the answers.  I hadn't used the SDK or IntyBASIC in a while and thought maybe I messed something up when I installed the new version.  Now that I know it is working as expected. I feel much better.

Share this post


Link to post
Share on other sites

Just in time for the IntyBASIC programming contest ... I've just updated the first post with the latest version of the SDK.  This release includes the latest version of IntyBASIC (v1.4.2) and the emulator (2020-08-22), fresh off the oven!

 

Both Windows and Mac OS X have been updated, respectively.

https://atariage.com/forums/topic/240526-introducing-the-intybasic-sdk/

 

     Enjoy

     -dZ.

  • Like 2

Share this post


Link to post
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.

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