[comp.sys.amiga] 1.3 includes

jms@antares.UUCP (joe smith) (10/21/88)

In article <8377@cit-vax.Caltech.Edu> stevel@tybalt.caltech.edu (Steve Ludtke) writes:
>With 1.3 coming out, I'd like to get the new include files for compilers.

In 1.3, there are no changes to Intuition, Exec, Dos, Graphics, etc libraries.
Nothing has changed in respect to interfacing with the libraries; there are
no new "include" files.

-- 
+----------------------------------------------------------------------------+
| TYMNET:JMS@F29  CA:"POPJ P,"  UUCP:{ames|pyramid}oliveb!tymix!antares!jms  |
| INTERNET: (Office-1.ARPA is no more)      PHONE:Joe Smith @ (408)922-6220  |
+----------------------------------------------------------------------------+

peter@sugar.uu.net (Peter da Silva) (10/21/88)

In article <215@antares.UUCP>, jms@antares.UUCP (joe smith) writes:
> In article <8377@cit-vax.Caltech.Edu> stevel@tybalt.caltech.edu (Steve Ludtke) writes:
> >With 1.3 coming out, I'd like to get the new include files for compilers.

> In 1.3, there are no changes to Intuition, Exec, Dos, Graphics, etc libraries.
> Nothing has changed in respect to interfacing with the libraries; there are
> no new "include" files.

From the Manx 3.6 disks:

2> list intuition
Directory "intuition" on Friday 14-Oct-88
preferences.h               3662 rwed Today     05:17:01
screens.h                   1454 rwed Today     05:17:02
intuition.h                 9452 rwed Today     05:17:04
intuitionbase.h             4211 rwed Today     05:17:05
4 files - 44 blocks used

From the Amiga includes 1.2:

2> list intuition
Directory "intuition" on Friday 14-Oct-88
intuition.h                54944 rwed 31-Mar-87 15:52:18
intuitionbase.h            12975 rwed 31-Mar-87 15:52:07
2 files - 142 blocks used

The two extra files contain part of the old intuition.h, and contain at the
very least a bigger preferences structure. No comments, though...

From Amiga includes 1.2, intuition.h:

    BYTE    RowSizeChange;     /* # to change gfxbase's NormalDisplayRows */
    BYTE    ColumnSizeChange;  /* # to change gfxbase's NormalDisplayColumns */
    BYTE    padding[14];    /* For further system expansion     */
};

From Aztec 3.6, preferences.h (my comments):

    BYTE sys_reserved1;	/* see below */
    BYTE sys_reserved2;
    UWORD PrintFlags;	/* presumably for the 1.3 drivers */
    UWORD PrintMaxWidth;
    UWORD PrintMaxHeight;
    UBYTE PrintDensity;
    UBYTE PrintXOffset;
    UWORD wb_Width;	/* Wonder what these are for, Hedley? */
    UWORD wb_Height;
    UBYTE wb_Depth;
    UBYTE ext_size;	/* This is a weird one */
};
#define RowSizeChange sys_reserved1
#define ColumnSizeChange sys_reserved2

I strongly suspect that there will at least be a published version of
1.3 includes that reflects this change, without the comments stripped
out and without the "sys_reserved[12]" stuff.

I discovered this when told my 'prefs' program (which assumed the Aztec 3.6
files) wouldn't compile with 3.4 and the Amiga 1.2 includes.

By the way, this means 'prefs' already works with the 1.3 prefs structure.
I suspect the 1.4 structure will be bigger.
-- 
		Peter da Silva  `-_-'  peter@sugar.uu.net
		 Have you hugged  U  your wolf today?

	Disclaimer: I accept full responsibility for my own typos.

dillon@CORY.BERKELEY.EDU (Matt Dillon) (10/22/88)

>In article <8377@cit-vax.Caltech.Edu> stevel@tybalt.caltech.edu (Steve Ludtke) writes:
>>With 1.3 coming out, I'd like to get the new include files for compilers.
>
>In 1.3, there are no changes to Intuition, Exec, Dos, Graphics, etc libraries.
>Nothing has changed in respect to interfacing with the libraries; there are
>no new "include" files.

	Uh... wrong.  New preferences and new printer drivers, so a couple
include files *have* changed.  And I need them!  While the ROM based 
libraries have not changed, some of the disk based libraries and devices
have.

				-Matt

jimm@amiga.UUCP (Jim Mackraz) (10/22/88)

In article <2879@sugar.uu.net> peter@sugar.uu.net (Peter da Silva) writes:
)preferences.h               3662 rwed Today     05:17:01
)screens.h                   1454 rwed Today     05:17:02

)The two extra files contain part of the old intuition.h, and contain at the
)very least a bigger preferences structure. No comments, though...

True: some things were broken out just to make them more manageable.

)From Amiga includes 1.2, intuition.h:
)
)    BYTE    RowSizeChange;     /* # to change gfxbase's NormalDisplayRows */
)    BYTE    ColumnSizeChange;  /* # to change gfxbase's NormalDisplayColumns */
)    BYTE    padding[14];    /* For further system expansion     */
)};
)
)From Aztec 3.6, preferences.h (my comments):
)
)    BYTE sys_reserved1;	/* see below */
)    BYTE sys_reserved2;
)    UWORD PrintFlags;	/* presumably for the 1.3 drivers */
)    UWORD PrintMaxWidth;
)    UWORD PrintMaxHeight;
)    UBYTE PrintDensity;
)    UBYTE PrintXOffset;
)    UWORD wb_Width;	/* Wonder what these are for, Hedley? */
)    UWORD wb_Height;
)    UBYTE wb_Depth;
)    UBYTE ext_size;	/* This is a weird one */
)};
)#define RowSizeChange sys_reserved1
)#define ColumnSizeChange sys_reserved2
)
)I strongly suspect that there will at least be a published version of
)1.3 includes that reflects this change, without the comments stripped
)out and without the "sys_reserved[12]" stuff.

My understanding is that the official V1.3 include files will have
struct Preferences the same size as V1.2 (else, DOS is confused).

What Aztec seems to have is a snapshot of some earlier versions (current,
perhaps, at the time V1.3 roms were frozen, a long time ago).  Maybe
V1.3 includes are similar (but sizeof( struct Preferences) should not
be different between V1.2 and V1.3).

The Row/ColumnSizeChange stuff is the somewhat unauthorized 'morerows'
stuff.  It should survive in name and function.  It should NOT be used
by any program except morerows, or the equivalent.

I don't know the status of the printer stuff.
The wb_Width/Height/Depth stuff aren't specifically Hedley, but specify
a scrolling Workbench screen.  This is not implemented (at least correctly)
in any available software, released or in public alpha/beta.  Don't
touch or even look.

The ext_size was for an extension scheme which we have abandonded in
favor of a more general, modular, extensible preferences scheme.
Don't touch or look.

I advise that you make no use of any of these "new" fields, with the
possible exception of the printer stuff.  Do not go overboard with
the MoreRows stuff.  In particular, do not use those fields to determine
standard overscan dimensions.  Use STDSCREENHEIGHT and NormalDisplayColumns
in GfxBase if you must.  Note that all overscan is subject to change
for V1.4.

)I discovered this when told my 'prefs' program (which assumed the Aztec 3.6
)files) wouldn't compile with 3.4 and the Amiga 1.2 includes.

Please EMail exactly what the problem was: I don't see where incompatibility
would arise if you were not using the new fields.  Thanks.

)By the way, this means 'prefs' already works with the 1.3 prefs structure.
)I suspect the 1.4 structure will be bigger.

It will not, as mentioned above.  There will be a separate extension
mechanism, though.

)		Peter da Silva  `-_-'  peter@sugar.uu.net
)		 Have you hugged  U  your wolf today?

	jimm
-- 
	Jim Mackraz, I and I Computing	  
	amiga!jimm	BIX:jmackraz
Opinions are my own.  Comments regarding the Amiga operating system, and
all others, are not to be taken as Commodore official policy.

peter@sugar.uu.net (Peter da Silva) (10/22/88)

In article <3048@amiga.UUCP>, jimm@amiga.UUCP (Jim Mackraz) writes:
> My understanding is that the official V1.3 include files will have
> struct Preferences the same size as V1.2 (else, DOS is confused).

Why is DOS confused? I mean, Prefs seems designed to allow extensibility.
What went wrong?

> What Aztec seems to have is a snapshot of some earlier versions (current,
> perhaps, at the time V1.3 roms were frozen, a long time ago).  Maybe
> V1.3 includes are similar (but sizeof( struct Preferences) should not
> be different between V1.2 and V1.3).

If you look closely at the extra fields, the size is the same. The 'filler'
in the 1.2 structure matches the 1.3 structure just fine.

> The Row/ColumnSizeChange stuff is the somewhat unauthorized 'morerows'
> stuff.  It should survive in name and function.  It should NOT be used
> by any program except morerows, or the equivalent.

I should hope so, since it was in the 1.2 Prefs with NO indication that it
was unauthorised.

> I don't know the status of the printer stuff.
> The wb_Width/Height/Depth stuff aren't specifically Hedley, but specify
> a scrolling Workbench screen.  This is not implemented (at least correctly)
> in any available software, released or in public alpha/beta.  Don't
> touch or even look.

Too late... my 'prefs' program (posted to comp.sources.amiga) lets anyone look.
Not to mention touch.

> The ext_size was for an extension scheme which we have abandonded in
> favor of a more general, modular, extensible preferences scheme.
> Don't touch or look.

Too late.

I doubt if many people other than me are actually using the program, and I
certainly don't hack those fields.

> )I discovered this when told my 'prefs' program (which assumed the Aztec 3.6
> )files) wouldn't compile with 3.4 and the Amiga 1.2 includes.

> Please EMail exactly what the problem was: I don't see where incompatibility
> would arise if you were not using the new fields.  Thanks.

I *am* using the new fields. When I wrote the program I just copied the fields
from the latest includes I had handy... the Aztec 3.6 ones. This makes it
obvious what the problem was... other people didn't have the new files.
-- 
		Peter da Silva  `-_-'  peter@sugar.uu.net
		 Have you hugged  U  your wolf today?

	Disclaimer: I accept full responsibility for my own typos.

jms@antares.UUCP (joe smith) (10/22/88)

In article <8810211714.AA11235@cory.Berkeley.EDU> dillon@CORY.BERKELEY.EDU (Matt Dillon) writes:
>>jms says: there are no new "include" files.
>	Uh... wrong.  New preferences and new printer drivers.
>While the ROM based libraries have not changed, some of the disk based 
>libraries and devices have.
>				-Matt

Sorry about that bit if misinformation - I forgot about Preferences.
It has a whole new "graphics" screen.  It has new settings for the following:
Density, Center Image, Scaling, Color Correction, Left Offset, Dithering,
MaxWidth, MaxHeight, Limits, and Anti-Alias.  I'm going to have to try out
the new dithering selections; we now have 3 choices.  Ordered (the default),
HalfTone, and F/S (Floyd-Steinberg).
-- 
+----------------------------------------------------------------------------+
| TYMNET:JMS@F29  CA:"POPJ P,"  UUCP:{ames|pyramid}oliveb!tymix!antares!jms  |
| INTERNET: (Office-1.ARPA is no more)      PHONE:Joe Smith @ (408)922-6220  |
+----------------------------------------------------------------------------+

jdow@gryphon.CTS.COM (J. Dow) (10/24/88)

In article <215@antares.UUCP> jms@antares.UUCP (joe smith) writes:
>In article <8377@cit-vax.Caltech.Edu> stevel@tybalt.caltech.edu (Steve Ludtke) writes:
>>With 1.3 coming out, I'd like to get the new include files for compilers.
>
>In 1.3, there are no changes to Intuition, Exec, Dos, Graphics, etc libraries.
>Nothing has changed in respect to interfacing with the libraries; there are
>no new "include" files.
>
>-- 

Er if you say so.... (I have the omega 8 includes. They are indeed different.
I *MUST* have them if I am going to do any disk device and autoboot work, And
there are, I believe, some "workmanship" type changes elsewhere. I suspect
that you will want to contact Lauren at CATS for new include and readme files
when they are announced as being available.)

-- 
Sometimes a bird in the hand leaves a sticky deposit.
Perhaps it were best it remain there in the bush with the other one.

{@_@}
	jdow@bix (where else?)		Sometimes the dragon wins. Sometimes
	jdow@gryphon.CTS.COM		the knight. Does the fair maiden ever
	{backbone}!gryphon!jdow		win? Surely both the knight and dragon
					stink. Maybe the maiden should suicide?
					Better yet - she should get an Amiga and					quit playing with dragons and knights.

jimm@amiga.UUCP (Jim Mackraz) (10/24/88)

In article <2884@sugar.uu.net> peter@sugar.uu.net (Peter da Silva) writes:
)In article <3048@amiga.UUCP>, jimm@amiga.UUCP (Jim Mackraz) writes:
)> My understanding is that the official V1.3 include files will have
)> struct Preferences the same size as V1.2 (else, DOS is confused).
)
)Why is DOS confused? I mean, Prefs seems designed to allow extensibility.
)What went wrong?

The dos does some validation based on size, wrongly, which effects
moving preferences file from new disks to old, and so on.

)> The Row/ColumnSizeChange stuff is the somewhat unauthorized 'morerows'
)> stuff.  It should survive in name and function.  It should NOT be used
)> by any program except morerows, or the equivalent.
)
)I should hope so, since it was in the 1.2 Prefs with NO indication that it
)was unauthorised.

I hope you didn't assume it was usable by a program other than morerows
or the equivalent.

)> The wb_Width/Height/Depth stuff aren't specifically Hedley, but specify
)> a scrolling Workbench screen.  This is not implemented (at least correctly)
)> in any available software, released or in public alpha/beta.  Don't
)> touch or even look.

)Too late... my 'prefs' program (posted to comp.sources.amiga) lets anyone look.
)Not to mention touch.

Hey, that's great.  Your program or users' behavior might interfere
with later system software.  I expect the users will be able to tell.

)> The ext_size was for an extension scheme which we have abandonded in
)> favor of a more general, modular, extensible preferences scheme.
)> Don't touch or look.

)Too late.

Too bad.  I hope you don't count too heavily on its values, which are
not documented.

)I doubt if many people other than me are actually using the program, and I
)certainly don't hack those fields.

Well, I was kind of counting on that.

)> )I discovered this when told my 'prefs' program (which assumed the Aztec 3.6
)> )files) wouldn't compile with 3.4 and the Amiga 1.2 includes.
)
)> Please EMail exactly what the problem was: I don't see where incompatibility
)> would arise if you were not using the new fields.  Thanks.
)
)I *am* using the new fields. When I wrote the program I just copied the fields
)from the latest includes I had handy... the Aztec 3.6 ones. This makes it
)obvious what the problem was... other people didn't have the new files.
)-- 
)		Peter da Silva  `-_-'  peter@sugar.uu.net

You'll like V1.4 Intuition: nothing you aren't allowed to play with in Intuition
will be present in the include files.  I'm assigning Reserved[4] to a
function key.

	jimm

-- 
	Jim Mackraz, I and I Computing	  
	amiga!jimm	BIX:jmackraz
Opinions are my own.  Comments regarding the Amiga operating system, and
all others, are not to be taken as Commodore official policy.

peter@sugar.uu.net (Peter da Silva) (10/24/88)

In article <3053@amiga.UUCP>, jimm@amiga.UUCP (Jim Mackraz) writes:
> The dos does some validation based on size, wrongly, which effects
> moving preferences file from new disks to old, and so on.

I hope this is fixed in a later version, rather than going to something
nonstandard.

> )I should hope so, since it was in the 1.2 Prefs with NO indication that it
> )was unauthorised.

> I hope you didn't assume it was usable by a program other than morerows
> or the equivalent.

Prefs is the equivalent of morerows. All it does is dump your preferences
structure or let you poke values into it from a text file. It's the
nonwindowing equivalent of Preferences.

> Too bad.  I hope you don't count too heavily on its values, which are
> not documented.

I don't care about its values. In fact I just had a look at my code again.
I didn't understand it so I didn't include it.
-- 
		Peter da Silva  `-_-'  peter@sugar.uu.net
		 Have you hugged  U  your wolf today?

	Disclaimer: I accept full responsibility for my own typos.

jimm@amiga.UUCP (Jim Mackraz) (10/25/88)

In article <2900@sugar.uu.net> peter@sugar.uu.net (Peter da Silva) writes:
)In article <3053@amiga.UUCP>, jimm@amiga.UUCP (Jim Mackraz) writes:
)> The dos does some validation based on size, wrongly, which effects
)> moving preferences file from new disks to old, and so on.
)
)I hope this is fixed in a later version, rather than going to something
)nonstandard.

Hey, big guy, we ARE the standard.

)> )I should hope so, since it was in the 1.2 Prefs with NO indication that it
)> )was unauthorised.
)
)> I hope you didn't assume it was usable by a program other than morerows
)> or the equivalent.
)
)Prefs is the equivalent of morerows. All it does is dump your preferences
)structure or let you poke values into it from a text file. It's the
)nonwindowing equivalent of Preferences.

Sounds fine.  Note that Preferences does some measure of validity
checking on some things (e.g., PointerTicks) which are not documented.

Poking preferences values without the help of a Commodore program (which
doesn't include morerows, by the way) might just lead one into
the cracks in the Preferences scheme.  Caveat user.

Making frequent calls to SetPrefs at runtime to carve some desired
behavior out of the system is another way to get stuck in a crack.
Caveat programmer. 

Preferences isn't so great as a "black box"  ;^)  Treat it with
kid gloves.  Anything screaming for enhancement that much will
eventually change in some way.  It's always an inviting challenge to
maintain perfect upward compatibility for all sorts of creative
programs while presenting a completely new, modern paradigm for
doing basically the same thing, except different.

)> Too bad.  I hope you don't count too heavily on its values, which are
)> not documented.
)
)I don't care about its values. In fact I just had a look at my code again.
)I didn't understand it so I didn't include it.
)		Peter da Silva  `-_-'  peter@sugar.uu.net

I feel like that all the time.

	jimm
-- 
	Jim Mackraz, I and I Computing	  
	amiga!jimm	BIX:jmackraz
Opinions are my own.  Comments regarding the Amiga operating system, and
all others, are not to be taken as Commodore official policy.

peter@sugar.uu.net (Peter da Silva) (10/25/88)

In article <3058@amiga.UUCP>, jimm@amiga.UUCP (Jim Mackraz) writes:
> In article <2900@sugar.uu.net> peter@sugar.uu.net (Peter da Silva) writes:
> )In article <3053@amiga.UUCP>, jimm@amiga.UUCP (Jim Mackraz) writes:
> )> The dos does some validation based on size, wrongly, which effects
> )> moving preferences file from new disks to old, and so on.

> )I hope this is fixed in a later version, rather than going to something
> )nonstandard.

> Hey, big guy, we ARE the standard.

Yeh, I know. I thought after I sent it that my phrasing was totally weird. But
I hope you understand what I'm trying to say... there are hooks in the existing
Prefs design for changing the size of the structure and file, and you have in
the past indicated that people shouldn't depend on the size of the file staying
constant.

By the way, that "we ARE the standard" line didn't work for AT&T. And they're
much bigger than Commodore-Amiga. I hope you can keep the system in line, tho',
without stifling creativity.

Speaking of which, what are you doing about multiple serial ports? Eventually
you're gonna get sick of me asking, and you'll post something about this
new grand scheme you've been hatching on Bix. Why not now?

> Sounds fine.  Note that Preferences does some measure of validity
> checking on some things (e.g., PointerTicks) which are not documented.

Shoulda put those validity checks into SetPrefs, probably (monday-morning
quarterbacking at its finest).

> Poking preferences values without the help of a Commodore program (which
> doesn't include morerows, by the way) might just lead one into
> the cracks in the Preferences scheme.  Caveat user.

I've been doing it for 6 or 8 months now without problems.

> Making frequent calls to SetPrefs at runtime to carve some desired
> behavior out of the system is another way to get stuck in a crack.
> Caveat programmer. 

Ditto. No cracks. A few warts.

> I feel like that all the time.

You sound like Steven Wright.
-- 
		Peter da Silva  `-_-'  peter@sugar.uu.net
		 Have you hugged  U  your wolf today?

	Disclaimer: I accept full responsibility for my own typos.

mlelstv@faui44.informatik.uni-erlangen.de (Michael van Elst ) (10/28/88)

In article <215@antares.UUCP> jms@antares.UUCP (joe smith) writes:
>In article <8377@cit-vax.Caltech.Edu> stevel@tybalt.caltech.edu (Steve Ludtke) writes:
>>With 1.3 coming out, I'd like to get the new include files for compilers.
>
>In 1.3, there are no changes to Intuition, Exec, Dos, Graphics, etc libraries.
>Nothing has changed in respect to interfacing with the libraries; there are
>no new "include" files.

Hmm, there ARE changes to Preferences, printer driver, romboot.library,
expansion.library. And I hope, they are described in new include files.

Of course, a usual programmer does not need to write printer drivers
and autoboot devices.

The only thing he might use are the new Preferences flags.

				Michael van Elst

E-mail: UUCP: ...uunet!unido!fauern!faui44!mlelstv

dale@boing.UUCP (Dale Luck) (10/31/88)

In article mlelstv@faui44.UUCP (Michael van Elst (kdebugger)) writes:
>In article <215@antares.UUCP> jms@antares.UUCP (joe smith) writes:
>>In article <8377@cit-vax.Caltech.Edu> stevel@tybalt.caltech.edu (Steve Ludtke) writes:
>>>With 1.3 coming out, I'd like to get the new include files for compilers.
>>
>>In 1.3, there are no changes to Intuition, Exec, Dos, Graphics, etc libraries.
>>Nothing has changed in respect to interfacing with the libraries; there are
>>no new "include" files.
>

There are new include files for the ieee math libraries.

There is a libraries/mathlibrary.h (should have been mathieeelibrary.h as
I reflect on it) which describes the MathIEEEBase structure.

There is mathieeedp.h which has a bunch of #defines like
#define acos	IEEEDPAcos
etc.
The mathffp.h has been reworked and contains defines like
#define acos	SPAcos

These libraries also define the proper return types like float or double.

There is also a resource/mathresource.h include file to describe the
resource data structure that the ieee math libraries now look for
when they start up. The MathResource is used to inform the system of
math hardware that can be used to speed up calculations.


-- 
Dale Luck     Boing, Inc. {uunet!cbmvax|pyramid}!amiga!boing!dale
Although I do contract work for Amiga-LosGatos, my opinions probably
don't represent those of Commodore or its management or its engineers,
but I think the world would be a better place if they did.