Click Here
home features news forums classifieds faqs links search
6027 members 
Amiga Q&A /  Free for All /  Emulation /  Gaming / (Latest Posts)
Login

Nickname

Password

Lost Password?

Don't have an account yet?
Register now!

Support Amigaworld.net
Your support is needed and is appreciated as Amigaworld.net is primarily dependent upon the support of its users.
Donate

Menu
Main sections
Home
Features
News
Forums
Classifieds
Links
Downloads
Extras
OS4 Zone
IRC Network
AmigaWorld Radio
Newsfeed
Top Members
Amiga Dealers
Information
About Us
FAQs
Advertise
Polls
Terms of Service
Search

IRC Channel
Server: irc.amigaworld.net
Ports: 1024,5555, 6665-6669
SSL port: 6697
Channel: #Amigaworld
Channel Policy and Guidelines

Who's Online
22 crawler(s) on-line.
 14 guest(s) on-line.
 0 member(s) on-line.



You are an anonymous user.
Register Now!
 zErec:  9 mins ago
 _ThEcRoW:  11 mins ago
 Karlos:  22 mins ago
 matthey:  1 hr 47 mins ago
 zipper:  1 hr 54 mins ago
 Frank:  1 hr 54 mins ago
 TheodoreTwinky:  2 hrs ago
 michalsc:  2 hrs 10 mins ago
 MEGA_RJ_MICAL:  2 hrs 11 mins ago
 wakido:  2 hrs 12 mins ago

/  Forum Index
   /  Developer Projects Forum
      /  Classic AmigaOS Programming : An introduction - Book out now
Register To Post

Goto page ( Previous Page 1 | 2 )
PosterThread
coldacid 
Re: Classic AmigaOS Programming : An introduction - Book out now
Posted on 18-May-2020 18:33:13
#21 ]
Member
Joined: 27-Oct-2019
Posts: 39
From: Candinavia

My copy finally arrived while I was at the cottage on the weekend. Looking forward to reading through it and experimenting.

 Status: Offline
Profile     Report this post  
olsen 
Re: Classic AmigaOS Programming : An introduction - Book out now
Posted on 23-Nov-2021 18:02:43
#22 ]
Cult Member
Joined: 15-Aug-2004
Posts: 759
From: Germany

I ordered the book last year, curious about what I might find. A good introduction to developing software for the Amiga operating system is a rare thing, and as far as I know nobody has attempted to make one since the early days when publishers such as Sybex did splendid work in this field. I name "Amiga programmer's handbook" (volumes I and II) and "Programmer's guide to the Amiga" as the best books in this field (which I, so it happens, didn't discover until years later, after I had already learned a lot about the craft in my own bumbling ways).

So, what do you find in this book?

The author begins quickly by outlining how you get started with the Native Development Kit, which contains all the basics you need to develop Amiga software. You may need an assembler tool (Asm-Pro being offered as a good choice) or a 'C' compiler (vbcc is offered as a good choice). Then the fundamentals of the system design are covered by starting with the 68000 CPU architecture, its instruction set, constraints and peculiarities. As you may find out very quickly, the author has a proclivity for 68k assembly language development when programming the Amiga. Development using the 'C' programming language is touched upon, but the main point is in covering how to make use of the Amiga operating system using assembly language programming.

After this introduction to the system, the operating system's main components are covered in a form which I would call a "digest" of both the AutoDocs (which are the detailed, but sometimes not detailed enough, pieces of the operating system documentation) and select details one may find only in the Amiga ROM Kernel Reference Manuals (which provide context and show how the pieces described in the AutoDocs fit together). You can learn about the memory management, the multitasking functions, device I/O, the graphical user interface, the building blocks which underpin it, and the dos.library. An entire chapter is dedicated to how you would make use of the trackdisk.device which controls access to the floppy disk drive which you may use to read and store data permanently.

The digests, as I called them, are retellings of what you could find in the AutoDocs, which themselves are already very terse. Which functions are mentioned in these sections apparently is determined by their utility if you want to build something quickly, allowing you to experiment and get a grip on how to develop Amiga software. Portions of the Amiga operating system which are not mentioned here, such as icon.library, could arguably be explored further by having learned in the book how the other operating system components work, and how they work together. As the book's title says, it is an introduction.

These digests are generally well-written, but they also contain curious omissions which might just handicap you if you tried, for example, the graphics.library Flood() function. No mention is made that for Flood() to be used you need use a RastPort with a correctly set up TmpRas and how you would do that. Not knowing how this accomplished, you'll only get memory corruption and worse...

The book covers operating system functionality which would have been available in 1987 but also makes mention of features present only in later operating system versions, such as Kickstart 2.0 and 3.0. The target machines mentioned to develop software for are the Amiga 500, Amiga 500+ and the Amiga 1200. All of these are entry level machines the likes of which people such as myself got their start on back in the day.

Looking back, I would say that this is as good an introduction to Amiga programming as a novice might find who's inclined to favour assembly language programming. Smaller errors (e.g. how to not to use the graphics.library Flood() function) are present but could be revised in later publishing runs. One big obstacle I can see is in that data structures (such as used for the Intuition Window and Screen) are explained in 'C' language syntax which would be a big problem for assembly language programmers, especially novices.

As a hobbyist you might be well-served by this introduction. Compared to the books of yore as published by Sybex I do feel, however, that "Classic AmigaOS programming" fails to build the knowledge you need in order to develop software for the Amiga operating system like Rob Peck's "Programmer's guide to the Amiga" did. Where "Classic AmigaOS programming" tends to be somewhat anecdotal, Rob Peck's book is much more structured in how it teaches the craft. And Eugene P. Mortimore's "Amiga programmer's handbook" is much, much, much better researched and written than the digests offered in "Classic AmigaOS programming" and also strives to document the entire operating system as it was in 1987 (and succeeds: its contents rival if not outshine the AutoDocs of the Kickstart 1.3 days).

As an Amiga software developer who's been around a bit and paid his dues several times over while pretending to have learned something from the Amiga operating system documentation available to him at the time, would I buy "Classic AmigaOS programming" given the options? I sure would do. Would I be on the right path to learn and grow beyond being a hobbyist, content to use a portion of the operating system as I was shown here? No, sadly, not. But then 68k assembly language programming or 'C' language programming on the Amiga is not for everyone anyway, and, you probably might have heard it before, it always was a harsh and unforgiving environment to begin with. Small errors, easily overlooked by the beginner, would be punished harshly and very swiftly. "Classic AmigaOS programming" might just help to run more quickly and more deeply intro trouble without understanding your predicament. As with 'C' language programming, and certainly 68k assembly programming, you'll find enough rope to hang yourself with unless you learn piece by piece first how trouble looks like and how to avoid it. For the likes of me, it can take years, but it can also be fun at the same time. It pays to read the ROM Kernel Reference Manuals and not to get stuck with the AutoDocs. Enough said...

Last edited by olsen on 23-Nov-2021 at 06:04 PM.
Last edited by olsen on 23-Nov-2021 at 06:04 PM.
Last edited by olsen on 23-Nov-2021 at 06:03 PM.

 Status: Offline
Profile     Report this post  
bison 
Re: Classic AmigaOS Programming : An introduction - Book out now
Posted on 24-Nov-2021 22:51:22
#23 ]
Elite Member
Joined: 18-Dec-2007
Posts: 2038
From: N-Space

@olsen

Thanks for the review!

_________________
"Unix is supposed to fix that." -- Jay Miner

 Status: Offline
Profile     Report this post  
Trixie 
Re: Classic AmigaOS Programming : An introduction - Book out now
Posted on 25-Nov-2021 6:53:08
#24 ]
Amiga Developer Team
Joined: 1-Sep-2003
Posts: 2050
From: Czech Republic

@olsen

Thanks for the review! I guess the reason why we don't see manuals like those from Cybex back in the day is that the Amiga community lacks real writers: people who can write good, original and well-organized prose, rather than just compile material from various sources. And of course, writing a good manual requires investing a lot of time and effort, which can be difficult to justify given the hobby nature of today's Amiga and the relatively low prospective readership.

By the way, I still have the Peck book, and it really is great!

_________________
The Rear Window blog

AmigaOne X5000/020 @ 2GHz / 4GB RAM / Radeon RX 560 / ESI Juli@ / AmigaOS 4.1 Final Edition
SAM440ep-flex @ 667MHz / 1GB RAM / Radeon 9250 / AmigaOS 4.1 Final Edition

 Status: Offline
Profile     Report this post  
kamelito 
Re: Classic AmigaOS Programming : An introduction - Book out now
Posted on 28-Nov-2021 11:40:14
#25 ]
Cult Member
Joined: 26-Jul-2004
Posts: 788
From: Unknown

@olsen

>"Rob Peck's "Programmer's guide to the Amiga" did. Where "Classic AmigaOS programming" tends to be somewhat anecdotal, Rob Peck's book is much more structured in how it teaches the craft. And Eugene P. Mortimore's "Amiga programmer's handbook" is much, much, much better researched and written than the digests offered in "Classic AmigaOS programming" and also strives to document the entire operating system as it was in 1987 (and succeeds: its contents rival if not outshine the AutoDocs of the Kickstart 1.3 days)."


So which ones should we learn from? Rob Peck book or Eugene P. Mortimore? or maybe both because they're complementary...
Thx

 Status: Offline
Profile     Report this post  
olsen 
Re: Classic AmigaOS Programming : An introduction - Book out now
Posted on 29-Nov-2021 8:14:18
#26 ]
Cult Member
Joined: 15-Aug-2004
Posts: 759
From: Germany

@bison

Quote:

bison wrote:
@olsen

Thanks for the review!


I was waiting for a review of some kind of appear for the past year and none seemed to be coming. You're welcome

 Status: Offline
Profile     Report this post  
olsen 
Re: Classic AmigaOS Programming : An introduction - Book out now
Posted on 29-Nov-2021 8:23:33
#27 ]
Cult Member
Joined: 15-Aug-2004
Posts: 759
From: Germany

@Trixie

Quote:

Trixie wrote:
@olsen

Thanks for the review! I guess the reason why we don't see manuals like those from Cybex back in the day is that the Amiga community lacks real writers: people who can write good, original and well-organized prose, rather than just compile material from various sources. And of course, writing a good manual requires investing a lot of time and effort, which can be difficult to justify given the hobby nature of today's Amiga and the relatively low prospective readership.


Tell me about it

In my opinion the Amiga still needs developer documentation which matches the expectations current hobbyists would have. For its time the original documentation was way better than one could have hoped for, which is a rare thing.

While not directly connected to the Amiga operating system documentation, the quality of the "Deluxe Paint" manual made me realize what was possible in terms how documentation could look like, how it could introduce a newcomer to technology which was (for its audience) unique and uniquely powerful, too.

This is what I'd like to see more of, and given the paucity of such material, I started to do some writing of my own which will land in the next NDK 3.2 release

Quote:
By the way, I still have the Peck book, and it really is great!


It certainly is, and I regret reading it after having learned Amiga programming through "Inside the Amiga with C" by John Thomas Berry. While "Inside the Amiga with C" is a good book, Rob Peck's "Programmer's guide to the Amiga" is the much better book by comparison.

 Status: Offline
Profile     Report this post  
olsen 
Re: Classic AmigaOS Programming : An introduction - Book out now
Posted on 29-Nov-2021 8:31:33
#28 ]
Cult Member
Joined: 15-Aug-2004
Posts: 759
From: Germany

@kamelito

Quote:

kamelito wrote:
@olsen

>"Rob Peck's "Programmer's guide to the Amiga" did. Where "Classic AmigaOS programming" tends to be somewhat anecdotal, Rob Peck's book is much more structured in how it teaches the craft. And Eugene P. Mortimore's "Amiga programmer's handbook" is much, much, much better researched and written than the digests offered in "Classic AmigaOS programming" and also strives to document the entire operating system as it was in 1987 (and succeeds: its contents rival if not outshine the AutoDocs of the Kickstart 1.3 days)."


So which ones should we learn from? Rob Peck book or Eugene P. Mortimore? or maybe both because they're complementary...
Thx


I would recommend Rob Peck's book for a more than just solid introduction to Amiga operating system programming. This is how you can get started with 'C', and it defers to Eugene P. Mortimore's books for assembly language programming.

Because of its scope Rob Peck's book can only introduce you to the subject matter and provide you with the tools you need to learn how to put the parts of the operating system to good use which it could not cover. This is where Eugene P. Mortimore's books will fill in the gaps. While you could claim that they are mostly covering what the AutoDocs at the time (1987) would have, this would not be a fair assessment. Each operating system function documented at that time was researched and its documentation expanded upon in these books. This is the kind of quality Sybex was reknown for back in the day.

In brief, these books complement each other very well and, if possible, you might want to have all three. But start with Rob Peck's "Programmer's guide to the Amiga".

 Status: Offline
Profile     Report this post  
Goto page ( Previous Page 1 | 2 )

[ home ][ about us ][ privacy ] [ forums ][ classifieds ] [ links ][ news archive ] [ link to us ][ user account ]
Copyright (C) 2000 - 2019 Amigaworld.net.
Amigaworld.net was originally founded by David Doyle