Welcome to classic-mac-dev.

31 views
Skip to first unread message

Leif Strand

unread,
Aug 26, 2010, 8:05:13 PM8/26/10
to classic...@googlegroups.com

Thanks guys, for joining this new list.


Joshua Juran wrote:
> You want to convert resources to Rez source? Use DeRez.

Thanks -- that sounds familiar. Maybe I saw it once, but forgot it existed.


Joshua Juran wrote:
> But sometimes when Apple could choose to do nothing,
> they instead do something like hide Inside Macintosh from search
> engines.

I thought I was one only person on the planet who noticed this. After
discovering this -- and reading their "robots.txt" to make sure it
wasn't accidental -- I actively hated Apple for many months... But then,
a month or two ago, they OK'd the release of the MacPaint and QuickDraw
source code. That was such a happy day for me, I forgave them for
"robots.txt" and reverted to my usual attitude of indifference.

--Leif

Joshua Juran

unread,
Aug 26, 2010, 8:56:00 PM8/26/10
to classic...@googlegroups.com
On Aug 26, 2010, at 5:05 PM, Leif Strand wrote:

> Thanks guys, for joining this new list.

Thanks for creating it. Despite my earlier comments, I think having
the dedicated space will encourage better communication.

> Joshua Juran wrote:
> > You want to convert resources to Rez source? Use DeRez.
>
> Thanks -- that sounds familiar. Maybe I saw it once, but forgot it
> existed.

There's one in MPW and one in OS X (in /Developer/Tools in 10.4, /usr/
bin in 10.5) and THINK environments came with a standalone app. One
of these days I'll write free versions of Rez and DeRez, but that's
fairly low priority.

> Joshua Juran wrote:
>> But sometimes when Apple could choose to do nothing, they instead
>> do something like hide Inside Macintosh from search engines.
>
> I thought I was one only person on the planet who noticed this.
> After discovering this -- and reading their "robots.txt" to make
> sure it wasn't accidental -- I actively hated Apple for many months...

Yeah, I heard the official reason was to avoid confusing new
developers. Taken at face value, it might seem to imply that Apple
has limited confidence in their developers' judgment, but I didn't
really buy it anyway.

> But then, a month or two ago, they OK'd the release of the MacPaint
> and QuickDraw source code.

Whoa. THAT is news to me.

> That was such a happy day for me, I forgave them for "robots.txt"
> and reverted to my usual attitude of indifference.

Yeah, that's coming a long way since Apple's response to my request to
free HyperCard ten years ago: "Open source is not a dumping ground
for dead products." Then again, I'm not Andy Hertzfeld or Bill
Atkinson.

Oh, wait: "Note: This material is Copyright ©1984 Apple Inc. and is
made available only for non-commercial use." It's still non-free.
This is a gift for historians, not hackers.

Josh


Leif Strand

unread,
Aug 27, 2010, 7:19:07 PM8/27/10
to classic...@googlegroups.com
Joshua Juran wrote:
> Yeah, that's coming a long way since Apple's response to my request to
> free HyperCard ten years ago: "Open source is not a dumping ground for
> dead products."

That was you?! I remember reading that line. It stuck in my head...
partly because -- as I recall -- the speaker was of the Apple II old
timers. He worked on the Apple IIgs... Lyons or Deatherage or something.

> Oh, wait: "Note: This material is Copyright �1984 Apple Inc. and is
> made available only for non-commercial use." It's still non-free. This
> is a gift for historians, not hackers.

The brevity of the license does make it seem like they expect only
historians to use it.

I guess it's not "free" in the open source sense. Still,
"non-commercial" is pretty broad. If I dust off the source code and
produce a version that runs OK on a modern Mac -- by "modern" I mean one
with color :-) -- and I offer it and the modified source as a free
download, that's "non-commercial", right?

Unfortunately, the source is a bit of challenge to use. It took only an
evening to turn the Pascal source into something CWPro2 would digest
(mainly replacing old routine names with new ones). But, it took
several evenings to massage the M68K assembly into something MPW's
assembler would understand. The resulting executable runs, but it bombs
very quickly... like the moment I use a drawing tool, Mini vMac is
hosed. I can't think of what I did wrong. Maybe CW defaults to
generating code for 68020 or higher? Or maybe I messed up the assembly
somehow. Anyway, I was busy with other things so I put away this
"resurrect MacPaint" project.

--Leif

tortoise

unread,
Aug 27, 2010, 11:07:58 PM8/27/10
to Classic Macintosh Software Development


On Aug 27, 4:19 pm, Leif Strand <leif.c.str...@gmail.com> wrote:
> Joshua Juran wrote:

> > Oh, wait: "Note: This material is Copyright 1984 Apple Inc. and is
> > made available only for non-commercial use." It's still non-free. This
> > is a gift for historians, not hackers.
>
According to the news report I heard (the BBC News tech-geek reporter)
it was basicly released as result of a special request by the great
Donald Knuth who is writing a book on graphics algorithms now and
wanted to look at the code. They were talking all about how beautiful
the code is to read even for those with small programming experience.
The computer-history museum did request it but it seemed to have been
DK who did the trick. Nevertheless the history buffs do want running
code and they want it to be portable to future emulators.

Apparently they have a dynamic concept of history: if it don't run
somewhere its not fully preserved.

Joshua Juran

unread,
Aug 28, 2010, 12:04:47 AM8/28/10
to classic...@googlegroups.com
On Aug 27, 2010, at 4:19 PM, Leif Strand wrote:

> Joshua Juran wrote:
>> Yeah, that's coming a long way since Apple's response to my request
>> to free HyperCard ten years ago: "Open source is not a dumping
>> ground for dead products."
>
> That was you?!

:-)

That was my first MacHack. I asked about freeing HyperCard (largely
on behalf of the FreeCard community, now vanished) and making a USB
keyboard as good as the original Apple Extended (which they haven't).

> I remember reading that line.

Apparently I munged it slightly. The source other than me quoted it
as "Open source will not be a dumping ground for dead products."

http://www.google.com/search?q=%22Open+source%22+%22dumping+ground+for+dead+products%22

> It stuck in my head... partly because -- as I recall -- the speaker
> was of the Apple II old timers. He worked on the Apple IIgs...
> Lyons or Deatherage or something.

Steve Glass, according to the same source.

>> Oh, wait: "Note: This material is Copyright ©1984 Apple Inc. and
>> is made available only for non-commercial use." It's still non-
>> free. This is a gift for historians, not hackers.
>
> The brevity of the license does make it seem like they expect only
> historians to use it.

Not that it matters all that much. If I wanted to make e.g. a Carbon-
native MacPaint, I'd rewrite it in C++, reusing algorithmic logic but
not the actual code. So copyright wouldn't apply, and any patents
(e.g. on regions) have expired. There can't be trade secrets since
the code is released. At worst I couldn't call my version MacPaint.

Anyway, I've already found it useful just studying the QuickDraw code,
to understand what certain calls do. For example, KillPicture() is a
glorified call to DisposeHandle() and therefore follows the same rules
-- call it on and only on non-resource handles. And OpenPicture() has
a state leak -- if your heap can't allocate the 500-byte handle it
tests for, the routine exits immediately -- but not before calling
HidePen().

> I guess it's not "free" in the open source sense. Still, "non-
> commercial" is pretty broad. If I dust off the source code and
> produce a version that runs OK on a modern Mac -- by "modern" I mean
> one with color :-) -- and I offer it and the modified source as a
> free download, that's "non-commercial", right?

Sure. But if there were a Debian-style Mac software archive, it would
go under non-free. And you couldn't mix it with GPL-licensed code,
for example, since the result couldn't be distributed under the GPL.

> Unfortunately, the source is a bit of challenge to use. It took
> only an evening to turn the Pascal source into something CWPro2
> would digest (mainly replacing old routine names with new ones).
> But, it took several evenings to massage the M68K assembly into
> something MPW's assembler would understand. The resulting
> executable runs, but it bombs very quickly... like the moment I use
> a drawing tool, Mini vMac is hosed. I can't think of what I did
> wrong. Maybe CW defaults to generating code for 68020 or higher?

No, but it might not be compatible with System 6 or earlier.

> Or maybe I messed up the assembly somehow. Anyway, I was busy with
> other things so I put away this "resurrect MacPaint" project.


Like I said, I would rewrite it in C++. I already have application
code that's System-7-savvy and even works PowerPC-native. ;-)

Josh


Reply all
Reply to author
Forward
0 new messages