Author Topic: 9.3  (Read 33722 times)

Offline OS923

  • Platinum Member
  • *****
  • Posts: 888
Re: 9.3
« Reply #20 on: October 21, 2019, 08:46:55 AM »
This is the current progress. Some programs are unfinished. Do not use these programs.

https://tinyurl.com/20191021os93

This link will work 14 days. You need 2.59 GB disk space.

Offline OS923

  • Platinum Member
  • *****
  • Posts: 888
Re: 9.3
« Reply #21 on: October 23, 2019, 06:59:49 AM »
I improved the headers of the libraries and the use of profiler.
I included the HTML and XML parsers.
It parses HTML at 32.6 MB/s.
It parses XML at 29.2 MB/s.

https://tinyurl.com/20191023sdk

This link will work 14 days.

Offline OS923

  • Platinum Member
  • *****
  • Posts: 888
Re: 9.3
« Reply #22 on: November 06, 2019, 09:20:40 AM »
I used the HTML parser to detect unused and undefined style in my documentation.

Offline Jubadub

  • Gold Member
  • *****
  • Posts: 326
  • New Member
Re: 9.3
« Reply #23 on: January 15, 2020, 10:27:07 AM »
Does the Finder in either OS923 or OS93 handle HFS+ (Mac OS Extended) longer file names that surpass the HFS (Mac OS Standard) 31-character limit for HFS+ partitions? I remember it was one of the goals, but is that part done?

Offline OS923

  • Platinum Member
  • *****
  • Posts: 888
Re: 9.3
« Reply #24 on: January 16, 2020, 07:37:26 AM »
I'm not sure what you mean with "handle".

Some of my new programs which look like console applications support HFS+ to access files of more than 2 GB. This is part of my own framework (the BigFileLib library).

The PowerPlant framework didn't support HFS+. The OS 9.2.3 programs were written with PowerPlant, but I added some HFS+ support to some programs like "Scan long names" to enable them to see filenames that are longer than 31 characters.

When we look at Finder, it is probably similar: the HFS+ functions are probably only used when there's no other option, for example when files have to be copied. When Finder deletes files, I see that they are caught by my "Pseudo delete" extension, which shows that Finder uses HFS instructions to delete files. Internally Finder works with FSSpecs. You can see that when you handle Apple events.

So the best filosophy seems to be to use the HFS+ functions only when there's no other option. This functionality is finished and part of my own framework. Even more, before I draw Unicode, I always check whether it can be done using Quickdraw and this is faster.

The old OS 9.2.3 programs have already been thrown away and I won't keep the source code. These programs get a new version with my own framework. I will post these programs here one by one when one is finished. I have no PowerPlant projects anymore besides a few small demo projects in the OS 9.3 SDK.

The OS 9.3 programs will be drastically different and more functional. It won't be for the faint of heart.
« Last Edit: January 17, 2020, 06:41:50 AM by OS923 »

Offline Jubadub

  • Gold Member
  • *****
  • Posts: 326
  • New Member
Re: 9.3
« Reply #25 on: January 16, 2020, 07:46:17 AM »
By "handle", what I meant, for example, is this:

Can we create a new folder in the Finder and name it "Folder name with more than 31 characters"?

Offline OS923

  • Platinum Member
  • *****
  • Posts: 888
Re: 9.3
« Reply #26 on: January 17, 2020, 06:41:09 AM »
No, but if that's what you want, I can do that in a few lines of code and pack it as a contextual menu extension.

The largest part of my work is the framework. If this is finished, then programs like "Change label" can be written in a few hundred lines of code.

Concerning the new Finder, I would lie if I say that it's an existing program, but it would also be incorrect to say that I have to start from zero. Most of the work that is necessary is done and works without error. What you see on screen is a drawing and this is a few hundred lines of code. Most work is behind the screen, what you don't see.

So to answer your question: I can create a new folder and name it "Folder name with more than 31 characters" in a few instructions using my framework, but this solution is not called "Finder".

I see that of all my work people are most interested in a new Finder. Perhaps I should finish this first?

The name for a new Finder that I was thinking of was "Friend".

Offline Jubadub

  • Gold Member
  • *****
  • Posts: 326
  • New Member
Re: 9.3
« Reply #27 on: January 17, 2020, 02:58:56 PM »
Thanks for the reply!

A new Finder is always an attractive idea, but please, since it's your project, feel free to program the parts that you personally want first. :)

Good luck! I'll be looking forward to bits and pieces of this project.

Offline OS923

  • Platinum Member
  • *****
  • Posts: 888
Re: 9.3
« Reply #28 on: January 18, 2020, 01:38:12 AM »
I linked MiniScheme and TinyScheme for OS 9 and I updated PLT Scheme and Gambit-C Scheme to CW Pro 6.3.

At this moment I'm trying to embed Scheme in my programs. (The problem is that the Scheme interpreters are written in C, and they use setjmp as an alternative for C++ exceptions, and this causes that the Scheme exceptions are not properly caught in a C/C++ program, so I have to catch them in Scheme.)

Then you can select files using S-expressions like the one you see in the attachment. The new Finder will use this to change the selection in a container window, the other programs will use this to select the files that they want to process.
« Last Edit: January 19, 2020, 01:44:13 AM by OS923 »

Offline OS923

  • Platinum Member
  • *****
  • Posts: 888
Re: 9.3
« Reply #29 on: January 18, 2020, 01:46:14 AM »
Next problem is a custom Unicode editor that doesn't crash when you stop the program in the debugger. Apple's Unicode editor has to be terminated at the end of the program, otherwise you get an ugly crash. That makes it difficult to write a program for OS 9 which edits Unicode.

Next problem is drawing the desktop. A new Finder needs to draw the desktop, it needs to become front application when you click in the desktop and preferably this would be done without quitting the old Finder. I'll try this in the weekend, then you know that I'm serious.

Offline OS923

  • Platinum Member
  • *****
  • Posts: 888
Re: 9.3
« Reply #30 on: January 18, 2020, 01:59:20 AM »
This is new since the last OS 9.3 SDK preview:

October 23, 2019

The C++ version of the HTML parser and the XML parser are tested in TextTest.

October 30, 2019

I improved Backup & synchronization with a progress bar.

November 3, 2019

I improved AutoFlush. I wrote New subfolder CM. I wrote the PPC version of Pseudo delete. I wrote the 68K version of AutoFlush and Macros.

November 8, 2019

I wrote NewFolderWIconCM.

November 9, 2019

I wrote ObjectSpecifierTest.

November 10, 2019

I linked and beautified AEGizmos.

November 12, 2019

All projects have now 68K struct alignment.

November 13, 2019

I can convert CodeWarrior project files to a binary file and a text file with a Scheme expression.

November 29, 2019

My automatic parameter list indentation now recognizes C and C++ comments.

December 1, 2019

I wrote ReindentParametersCM.

December 11, 2019

I wrote the TimSort version for OS 9.

December 18, 2019

I wrote ProjectLib and ProjectTest.

December 20, 2019

I found a bug in NewFolderWIconCM. I split ObjectSpecifierTest into ObjectSpecifierTest and FinderObjectTest. I improved the precompiled headers of my libraries.

December 24, 2019

I improved the headers of my private projects:
I removed ErrorLib's dependency on MSL.
I changed the way in which I sorted the projects in categories.
I improved the headers.
I use the source code instead of the static libraries.

December 27, 2019

I found a bug in SchemeInterpreter. It doesn't catch exceptions. I'm reordering the SDK stuff.

December 28, 2019

I'm relinking PLT Scheme.

December 29, 2019

I tried to link GambitScheme 3.0. Total fail.

December 30, 2019

I linked MiniScheme 0.85 and TinyScheme 1.41.

December 31, 2019

I updated PLT Scheme 1.0.3p1 and GambitScheme 3.0 to CW Pro 6.3. I discontinued SchemeEmbedTest, SchemeInterpreterLib and SchemeInterpreterTest.

January 3, 2020

I rewrote FinderObjectLib. It recognizes now 5 types of Finder objects.

January 4, 2020

I rewrote some demo programs with AppDiedSupport, OpenAppSupport, OpenDocSupport, PrintDocSupport and QuitSupport. I found a bug in SaveAVolumeAsAFile. You could run it only once, the second time it would have insufficient memory. I made it open source.

January 5, 2020

I made Dictionary open source. I removed the startup thread. I improved the startup and the sort order.

January 12, 2020

I tried to link MzScheme with 68K struct alignment. I made a special version of FinderObjectLib that can be used in any piece of PowerPC software. Then I made the NewTextFileCM demo project.

January 13, 2020

I found a way to catch exceptions when embedding PLT Scheme. I linked the release version of Dictionary as a monolithic program. I found a way to link Scheme programs with GambitScheme.

Offline IIO

  • Platinum Member
  • *****
  • Posts: 4439
  • just a number
Re: 9.3
« Reply #31 on: January 18, 2020, 04:21:50 AM »
Next problem is drawing the desktop. A new Finder needs to draw the desktop, it needs to become front application when you click in the desktop and preferably this would be done without quitting the old Finder.

i think this would be okay if regular behavior of everything desktop will be available to only one of them.

one could even implement a function in the new finder which closes the old finder when you launch it - and relauch the old finder when you close it.

insert arbitrary signature here

Offline OS923

  • Platinum Member
  • *****
  • Posts: 888
Re: 9.3
« Reply #32 on: January 19, 2020, 01:48:59 AM »
Relaunching the old Finder requires that you quit all applications. That's why it's more practical to allow Finder to run in the background. I may even leave certain tasks up to the old Finder, like formatting disks.

Offline IIO

  • Platinum Member
  • *****
  • Posts: 4439
  • just a number
Re: 9.3
« Reply #33 on: January 19, 2020, 05:01:53 PM »
i forgot about that.

...could this be changed? could one add doubleclick-to-launch to old finder?

i mean adding a "quit" function to old finder also works. so why not one for starting it.
insert arbitrary signature here

Offline OS923

  • Platinum Member
  • *****
  • Posts: 888
Re: 9.3
« Reply #34 on: January 20, 2020, 09:09:02 AM »
could one add doubleclick-to-launch to old finder?
No.

Offline OS923

  • Platinum Member
  • *****
  • Posts: 888
Re: 9.3
« Reply #35 on: January 20, 2020, 09:11:15 AM »
Every attempt to make Finder obsolete failed. SystemClick patch was ignored. PicHandle in desktop window was ignored. The rest made Finder crash.

Now I'll try a solution that has a very small chance to crash: one program covers the desktop with a window and another program does the rest.

Offline IIO

  • Platinum Member
  • *****
  • Posts: 4439
  • just a number
Re: 9.3
« Reply #36 on: January 20, 2020, 02:36:55 PM »
what about this:

 - trigger the function of appearance -> show desktop in background - no
 - start new finder
 - close old finder

or will the desktop come back? (i am not on my mac right now.)
insert arbitrary signature here

Offline IIO

  • Platinum Member
  • *****
  • Posts: 4439
  • just a number
Re: 9.3
« Reply #37 on: January 20, 2020, 02:39:31 PM »
could one add doubleclick-to-launch to old finder?
No.

but wait, i dont understand one thing:

when you remove old finder from the system folder, it wont even launch when you quit new finder, isnt it?

also, would the scenario of a replacment finder include that it will appear as finder to the system while you at the same time change the type of the old finder to APPL? :)
insert arbitrary signature here

Offline IIO

  • Platinum Member
  • *****
  • Posts: 4439
  • just a number
Re: 9.3
« Reply #38 on: January 20, 2020, 04:30:35 PM »
okay, if you change old finder to APPL it chrashes with an error 411.

probably because some of the stuff which i´t requires from extensions or the suitcase is single-client.

it would have been too nice if a solution would have been that easy.

...

SIZE resource settings wont help much either i guess.
insert arbitrary signature here

Offline OS923

  • Platinum Member
  • *****
  • Posts: 888
Re: 9.3
« Reply #39 on: January 21, 2020, 06:51:41 AM »
show desktop in background - no
I'll try this one first.