Jump to content
Tony Cruise

New Book - Programming Games for the Colecovision and Adam in Assembler

Recommended Posts

A project I have been working on for the last two years is nearing completion i.e. my next book called 'Programming Games for the Colecovision and Adam in Assembler'.

 

It includes a tutorial section working through the steps of creating a game, with a Z80 assembler primer and information on how to set up a cross development environment (similar but extended from my Let's Make a Retro Game series).

 

It also includes a complete Colecovision BIOS reference guide, covering ALL of the jump table BIOS calls with explanations and examples for using each call.

 

There are extensive memory and port maps, also with explanations etc.

 

It will have a dedicated web site section where you can download the code (for lazy typers :)).

 

The early pre-order link for the Kindle edition is available here.  Cover is still a draft.

51HLAofjDXL.jpg

 

Shortly after I have released the Kindle Edition, there will also be a physical print edition available on Amazon's print to order service, which I used for my last book and has been received well.

 

It does have some colour screen shots and pictures in it, let me know how many people would be interested in a full colour edition, rather than a colour cover with black and white interior.

 

The book is currently 90% complete, with the majority of the content completed, but I have about ten quality read through passes to do and need to tidy-up/check all the source code etc.

 

I am aiming for a 1st August 2020 release date at this stage. 

 

 

  • Like 10

Share this post


Link to post
Share on other sites
5 minutes ago, Tony Cruise said:

It includes [...] information on how to set up a cross development environment[.]

For which host platform(s)?

Share this post


Link to post
Share on other sites
16 minutes ago, mumbai said:

For which host platform(s)?

Specific instructions for Windows only, but information provided for setting up on other platforms is also included. I may still revise the chapter a little, but we shall see how I go time wise.

Share this post


Link to post
Share on other sites
9 hours ago, Tony Cruise said:

Specific instructions for Windows only, but information provided for setting up on other platforms is also included. I may still revise the chapter a little, but we shall see how I go time wise.

I've already pre-ordered the book anyway but if you have time to include some Mac-specific instructions that would be greatly appreciated!

 

Share this post


Link to post
Share on other sites

I'll certainly be a buyer of the print edition (I don't use Kindle) and would prefer a full colour edition if available.  Hopefully this will be the motivation I need to learn about a subject that has long fascinated me but was put off by the steep learning curve.

  • Like 1

Share this post


Link to post
Share on other sites

Sounds interesting. Since it is kdp print on demand i would put up the b&w interior version first and put up the colour interior along side afterwards and people can pay the difference if they want.

 

I would like to know more about programming for the adam specifically accessing data or disk drives.

 

i'll certainly buy a copy.

  • Like 1

Share this post


Link to post
Share on other sites

i will buy a printed copy for sure.  (as i have bought your other book on MSX :) ).

 

  • Like 1

Share this post


Link to post
Share on other sites

Interested, and will do the kindle version when it is released. I make carts for the CV/Adam, and have a couple of new ideas that would allow extended game play. 

I hope it'll be approachable :D

  • Like 1

Share this post


Link to post
Share on other sites

Is this something, say , someone with zero programming experience can purchase and learn to program from?  Or is a basic understanding of programming needed?

Share this post


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

Is this something, say , someone with zero programming experience can purchase and learn to program from?  Or is a basic understanding of programming needed?

Assembly programming is hard. It's hard even for people who are used to "readable" programming like C or Basic. It takes a good amount of time and dedication to wrap your head around assembly if you've never done it before.

  • Like 2

Share this post


Link to post
Share on other sites
11 minutes ago, Pixelboy said:

Assembly programming is hard. It's hard even for people who are used to "readable" programming like C or Basic. It takes a good amount of time and dedication to wrap your head around assembly if you've never done it before.

Thank you, I kinda thought so!! 

Share this post


Link to post
Share on other sites

Incidentally, I took a course in assembly programming a few years ago (it was a mandatory course for a university certificate) and I discovered that I was really good at it. But that was with PEP/8, which is a learning-oriented assembly language that is much simpler than the Z80's assembly instruction set. Still, I'm sure that if I took the time to learn Z80 assembly, I could get the hang of it quickly enough.

 

All this to say that if you want to know if assembly programming is something you could get good at, check out PEP/8 (also spelled PEP8) before the ColecoVision's Z80. There are a few tutorials on YouTube devoted to PEP/8.  :) 

 

Share this post


Link to post
Share on other sites
11 hours ago, lawdawg710 said:

Is this something, say , someone with zero programming experience can purchase and learn to program from?  Or is a basic understanding of programming needed?

You do need some programming experience, but if you want a taster see how you go with my older online series here:

 

The book is similar but I have expanded the detail and of course it is completely focused on the Colecovision and Adam, plus has the technical reference section.

  • Like 1

Share this post


Link to post
Share on other sites
13 hours ago, Pixelboy said:

Incidentally, I took a course in assembly programming a few years ago (it was a mandatory course for a university certificate) and I discovered that I was really good at it. But that was with PEP/8, which is a learning-oriented assembly language that is much simpler than the Z80's assembly instruction set. Still, I'm sure that if I took the time to learn Z80 assembly, I could get the hang of it quickly enough.

 

All this to say that if you want to know if assembly programming is something you could get good at, check out PEP/8 (also spelled PEP8) before the ColecoVision's Z80. There are a few tutorials on YouTube devoted to PEP/8.  :) 

 

i 'm always surprised that nowadays in computer science school  the students do not start to learn Assembly before starting others languages....   as a result you have tons of "programmers" that don't even know what is byte and have no idea how computer works.... as result the computer industry is flooded with absurd frameworks and tools that are totally inefficient ...  mainly in cloud industry  , it just totally crazy.   The young generation of "programmer" surprise me every day in not a good way....

 

when i was at school , we started to learn Assembly  (it was 6502 , then 68000 at this time) , then we go to PASCAL , then C , then C++  .... and each time that explained how it relates to previous one...   nowadays they just start with  HTML , CSS, javascript... sometimes JAVA ...  they just learn how to use some open source libraries without even understand how it works ...   :(

 

 

  • Like 1

Share this post


Link to post
Share on other sites
3 hours ago, youki said:

when i was at school , we started to learn Assembly  (it was 6502 , then 68000 at this time) , then we go to PASCAL , then C , then C++  .... and each time that explained how it relates to previous one...   nowadays they just start with  HTML , CSS, javascript... sometimes JAVA ...  they just learn how to use some open source libraries without even understand how it works ...

That's the main reason why libraries were invented, after all, so you could use other people's code all bundled up in nice little packages, without worrying about how they're coded under the hood. The downsides are that the library you're using often doesn't have quite all the functions/features you want, and of course, popular libraries keep being updated to the point where they become eventually practically incompatible with your own code, so if you program something and don't keep it updated with the latest revisions of libraries and frameworks, your little program will become obsolete pretty fast, to the point where it will be flagged as a security risk by anti-virus apps. And don't get me started about cross-platform development, which is admittedly not as bad today as it used to be, but it just goes to show that any "popular" piece of software you put out there will become a constant responsibility to keep it running as operating systems (and anti-virus software) evolve. Most people will call that a "necessary evil", and they are not wrong, but when you release a cool piece of software that people like, you're not necessarily planning to keep it up-to-date in the future, you just wanted to reach the top of your personal mountain. Just look at how emulators stop being worked on by their authors after a few years.

 

Wow, I'm going all over the place with this post... Sorry for the off-topicness. :P 

 

  • Like 3

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