mac-tip/README.md

169 lines
6.3 KiB
Markdown
Raw Normal View History

2021-11-23 15:54:17 +00:00
![Trouble In Paradise for Macintosh][mac-screenshot1]
2021-11-20 04:24:24 +00:00
2021-11-23 15:54:17 +00:00
TIP for 68k and PowerPC Macintosh
=================================
2021-11-20 04:24:24 +00:00
2021-11-23 15:54:17 +00:00
This is the repository for a Macintosh port of [Gibson Research Corp]'s
[Trouble in Paradise], a diagnostic and repair tool for Iomega Zip and
2021-11-25 17:45:18 +00:00
Jaz Drives. A big thanks goes to Steve Gibson for the x86 source that
made this project possible!
Compatibility
-------------
2021-11-20 04:24:24 +00:00
2021-11-23 18:22:00 +00:00
This tool is meant for Macintosh computers with a SCSI port, which
2021-11-25 18:04:07 +00:00
range from the Macintosh Plus, released in 1986; through the "Beige"
2021-11-23 18:22:00 +00:00
Power Macintosh G3, released in 1997.
2021-11-25 18:04:07 +00:00
<details>
<summary>Click here to read what works and what doesn't</summary></br>
2021-11-25 17:45:18 +00:00
It has been tested in on the following environments:
2021-11-25 18:31:18 +00:00
| Computer | Memory | System | Drive |
|-----------------|--------|--------|--------------|
| Macintosh Plus | 4MB | 7.0.1 | Zip Plus 100 |
| PowerBook 3400c | 144MB | 8.6 | Zip 100 |
2021-11-25 17:45:18 +00:00
2021-11-25 18:04:07 +00:00
What will not work or is missing:
* The functionality for operating with password or write protected disks is missing.
* The partition recovery feature has been removed, since it is meant for PC disks.
</details>
2021-11-23 18:22:00 +00:00
Disclaimer
----------
**This software is provided on as "as is" basis and the user assumes
all risk of data loss. Although this software bears a similarity to
the original by GRC, I may have introduced errors during the conversion
process. Please do not reach out to GRC for support on this Macintosh
port.**
2021-11-25 17:45:18 +00:00
Where are the binaries?
-----------------------
2021-11-27 01:24:39 +00:00
Once they are ready, compiled binaries will be made available on the
releases page for people who have signed up for
[beta testing in the discussion forum]
There is always a risk of data loss with a tool like this, so please
use it only on non-critical data if you decide to beta test.
2021-11-25 17:45:18 +00:00
How can you help?
2021-11-25 05:45:22 +00:00
-----------------
You can help this project in one of the following ways:
2021-11-25 17:45:18 +00:00
* Star this project on GitHub to show your support!
2021-11-27 01:24:39 +00:00
* Sign up to [beta testing in the discussion forum]!
2021-11-25 17:45:18 +00:00
* Donate a 1 or 2GB Jaz cartridge for testing (I have a 2GB SCSI Jaz drive, but no cartridges!).
* Become a GitHub sponsor to help fund my work with this and other open-source projects!
2021-11-25 05:45:22 +00:00
2021-11-25 17:45:18 +00:00
Got work?
---------
2021-11-23 18:22:00 +00:00
2021-11-25 17:45:18 +00:00
I am open to paid consulting work related to retro-computing or software
for vintage Macs. If you have a project in mind, please hit me up via my
[GitHub account]!
2021-11-23 18:22:00 +00:00
2021-11-27 01:21:49 +00:00
Unmounting volumes
------------------
2021-11-23 19:36:03 +00:00
2021-11-25 17:45:18 +00:00
**To avoid data corruption, you must "unmount" the cartridge prior to
2021-11-25 17:51:06 +00:00
starting a test with TIP!**
2021-11-23 19:36:03 +00:00
2021-11-25 17:45:18 +00:00
There is no way to unmount a cartridge (without also ejecting it) in the
2021-11-27 01:21:49 +00:00
Finder, but you can either:
1) Start TIP without a disk in the drive. TIP will recognize when Mac OS mounts newly inserted cartridges and will give you the choice to unmount it.
2) Use the command console to unmount a disk **prior to** starting TIP
2021-11-25 17:45:18 +00:00
<details>
<summary>Click here to learn how to use the Command Console</summary></br>
2021-11-23 19:36:03 +00:00
2021-11-25 17:51:06 +00:00
The Command Console shows up when you first start the program. This is a
unique feature of this port and is not present in the original TIP:
2021-11-23 19:36:03 +00:00
2021-11-25 17:45:18 +00:00
![Command Line][mac-screenshot2]
2021-11-23 19:36:03 +00:00
2021-11-27 01:21:49 +00:00
### Unmounting Volumes
A cartridge will show up in the Finder as an icon; MacOS calls this a "volume".
To prevent data corruption, you have to "unmount" the volume prior to testing.
When a volume is unmounted, the icon will disappear from the Finder, but the
cartridge will remain in the drive. To unmount a drive:
2021-11-23 19:36:03 +00:00
* Type `volumes` to show a numbered list of all Mac volumes
* Type `unmount` followed by a volume's number to unmount it.
2021-11-25 17:45:18 +00:00
*The unmount process will fail if you have any open files or applications in
2021-11-25 17:51:06 +00:00
the volume; if this happens, close those files and try again.*
2021-11-25 17:45:18 +00:00
2021-11-27 01:21:49 +00:00
### Starting TIP
To start TIP, you will need to tell it which SCSI device to use:
2021-11-23 19:36:03 +00:00
* Type `list` to show a numbered list of all SCSI devices by SCSI ID.
* Type `tip` followed by a SCSI ID to run TIP on that device.
2021-11-25 17:51:06 +00:00
Future versions of this tool may eliminate the Command Console, if I can find
the right way to automate all these steps in MacOS :grin:
</details>
2021-11-23 19:36:03 +00:00
2021-11-23 18:22:00 +00:00
About the code
--------------
2021-11-23 15:54:17 +00:00
Portions of the original code have been re-written in C++ and adapted
2021-11-25 18:31:18 +00:00
for compilation using [Metrowerks CodeWarrior 8 Gold]. The code is located
in the `mac-cpp-source` directory.
2021-11-25 17:45:18 +00:00
<details>
<summary>Click here to learn more about the code</summary></br>
2021-11-25 18:31:18 +00:00
![Metrowerks CodeWarrior 8 Gold Project][mac-screenshot3]
2021-11-25 17:45:18 +00:00
Native [Macintosh SCSI Manager] routines have been substituted for
the Win32 ASPI routines and the UI has been re-created as closely as
possible using QuickDraw routines.
2021-11-20 04:24:24 +00:00
2021-11-23 15:54:17 +00:00
Although the source code is materially different, I have maintained the
2021-11-25 17:45:18 +00:00
layout and routines names of the original assembly code to allow for easy
cross referencing and to make it easy to port additional functionality
in the future.
</details>
2021-11-20 04:24:24 +00:00
2021-11-23 15:54:17 +00:00
The Original TIP For Windows
----------------------------
2021-11-20 04:24:24 +00:00
2021-11-25 17:51:06 +00:00
The source code in the `x86-asm-source` directory is the original Windows
2021-11-23 15:54:17 +00:00
source code as graciously provided to me by Steve Gibson. I am republishing
his code in this repository with his permission.
2021-11-20 04:24:24 +00:00
2021-11-23 15:54:17 +00:00
<details>
<summary>Click here to see screenshots of the original TIP</summary></br>
2021-11-20 04:24:24 +00:00
2021-11-23 15:54:17 +00:00
![Trouble In Paradise About Box][win-screenshot1]
![Trouble In Paradise Testing][win-screenshot2]
</details>
2021-11-25 04:59:18 +00:00
![TIP Running on a Mac Plus][mac-plus]
2021-11-23 18:50:09 +00:00
[GitHub account]: https://github.com/marciot
2021-11-25 04:59:18 +00:00
[mac-screenshot1]: https://github.com/marciot/mac-tip/raw/main/images/mac-tip1.png "Mac TIP Testing Screen"
[mac-screenshot2]: https://github.com/marciot/mac-tip/raw/main/images/mac-cmd.png "Mac TIP Command Line"
2021-11-25 18:31:18 +00:00
[mac-screenshot3]: https://github.com/marciot/mac-tip/raw/main/images/mac-tip-cw8.png "Mac TIP Build Environment"
2021-11-25 04:59:18 +00:00
[win-screenshot1]: https://github.com/marciot/mac-tip/raw/main/images/win-tip1.gif "Windows TIP About Screen"
[win-screenshot2]: https://github.com/marciot/mac-tip/raw/main/images/win-tip2.gif "Windows TIP Testing Scren"
[mac-plus]: https://github.com/marciot/mac-tip/raw/main/images/macplus-tip.jpg "TIP running on a Mac Plus"
2021-11-23 15:54:17 +00:00
[Gibson Research Corp]: https://www.grc.com
[Trouble in Paradise]: https://www.grc.com/tip/clickdeath.htm
[Metrowerks CodeWarrior 8 Gold]: https://www.macintoshrepository.org/11910-codewarrior-8-gold
2021-11-25 05:45:22 +00:00
[Macintosh SCSI Manager]: https://developer.apple.com/legacy/library/documentation/mac/pdf/Devices/Scsi_Manager.pdf
2021-11-25 19:42:30 +00:00
[explanation document]: https://github.com/marciot/mac-tip/raw/main/x86-asm-source/RTF.RTF
2021-11-27 01:24:39 +00:00
[beta testing in the discussion forum]: https://github.com/marciot/mac-tip/discussions/1