Merge pull request #24 from jpluimers/wiki

Wiki updates (images, links)
This commit is contained in:
Doug Brown 2015-10-11 13:26:12 -07:00
commit f80987d24e
12 changed files with 49 additions and 29 deletions

BIN
2MB.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 89 KiB

BIN
2MB_adjusted_653px_wide.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

BIN
8MB.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

BIN
8MB_adjusted_653px_wide.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

View File

@ -21,8 +21,8 @@ cd SIMMProgrammer
Get the source code you need:
```
git clone https://code.google.com/p/mac-rom-simm-programmer.software/
hg clone https://code.google.com/r/doug-qextserialport-linuxnotifications
git clone https://github.com/dougg3/mac-rom-simm-programmer.software.git
git clone https://github.com/dougg3/doug-qextserialport-linuxnotifications.git
```
Compile it:

View File

@ -1,15 +1,15 @@
# Introduction #
I had a lot of trouble getting my udev rule correct for the SIMM programmer board, so I wanted to explain more about how I figured out what to do.
I had a lot of trouble getting my `udev` rule correct for the SIMM programmer board, so I wanted to explain more about how I figured out what to do.
# Details #
We need a udev rule on Linux because it defaults to giving a USB CDC modem port permissions such that only root and members of the dialout group can talk to it. The rule simply gives read and write permissions to all users, and gives it to the plugdev group rather than the dialout group.
We need a `udev` rule on Linux because it defaults to giving a USB CDC modem port permissions such that only `root` and members of the `dialout` group can talk to it. The rule simply gives read and write permissions to all users, and gives it to the plugdev group rather than the dialout group.
udev rules work by matching certain attributes and performing actions in response if the attributes match. In this case, we want to match on the USB vendor and device ID.
`udev` rules work by matching certain attributes and performing actions in response if the attributes match. In this case, we want to match on the USB vendor and device ID.
To get a list of attributes for a specific device (assuming /dev/ttyACM0 in this example), type:
To get a list of attributes for a specific device (assuming `/dev/ttyACM0` in this example), type:
```
sudo udevadm info --name=/dev/ttyACM0 --attribute-walk
@ -25,4 +25,4 @@ ACTION=="add", SUBSYSTEMS=="usb", ATTRS{idVendor}=="16d0", ATTRS{idProduct}=="06
I added the `ACTION=="add"` portion because I really only care about when the device is first being added to the system -- that's a perfect time to change the permissions. The rest of the rule matches a USB device with the provided vendor and product IDs. In response, it will change the mode and group of the device node.
Many newer Linux distributions use ModemManager to automatically detect modems when USB serial devices are plugged in by opening the port and doing things with it briefly. This behavior interferes with the SIMM programmer software, so setting the ID\_MM\_DEVICE\_IGNORE environment variable forces ModemManager to skip auto-detection on the port.
Many newer Linux distributions use `ModemManager` to automatically detect modems when USB serial devices are plugged in by opening the port and doing things with it briefly. This behavior interferes with the SIMM programmer software, so setting the `ID\_MM\_DEVICE\_IGNORE` environment variable forces `ModemManager` to skip auto-detection on the port.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 101 KiB

After

Width:  |  Height:  |  Size: 124 KiB

View File

@ -1,6 +1,6 @@
# Introduction #
To start, you need the Qt SDK installed, git for Mac OS X, and mercurial for Mac OS X. This is tested on Mac OS X 10.8 Mountain Lion, but probably works on older versions too.
To start, you need the Qt SDK installed and git for Mac OS X. This is tested on Mac OS X 10.8 Mountain Lion, but probably works on older versions too.
# Details #
@ -8,7 +8,7 @@ The versions of Qt that are provided are not compiled with i386 support enabled,
## Download the Qt 4.8.3 source code: ##
http://releases.qt-project.org/qt4/source/qt-everywhere-opensource-src-4.8.3.tar.gz
[http://releases.qt-project.org/qt4/source/qt-everywhere-opensource-src-4.8.3.tar.gz](http://releases.qt-project.org/qt4/source/qt-everywhere-opensource-src-4.8.3.tar.gz)
## Compile and install Qt: ##
@ -24,29 +24,29 @@ Or, if you are doing a 10.4-compatible Universal Binary:
## Grab the Mac ROM SIMM control program: ##
`git clone https://code.google.com/p/mac-rom-simm-programmer.software/`
`git clone https://github.com/dougg3/mac-rom-simm-programmer.software.git`
If you're making a universal binary for 10.4, edit ROMSIMMFlasher.pro inside the checked-out directory, remove x86\_64 from macx:CONFIG, and put ppc in its place.
If you're making a universal binary for 10.4, edit `ROMSIMMFlasher.pro` inside the checked-out directory, remove `x86\_64` from `macx:CONFIG`, and put `ppc` in its place.
## Grab my custom fork of QextSerialPort: ##
`hg clone https://code.google.com/r/doug-qextserialport-linuxnotifications/`
`git clone https://github.com/dougg3/doug-qextserialport-linuxnotifications.git`
## Set up Qt Creator ##
* Open Qt Creator (we're going to add the newly-compiled Qt to the list of Qt versions)
* Go to Preferences->Build & Run->Qt Versions->Add
* Because the OS X file chooser will not let you get into /usr/local, you need to cheat to get it to show it...
* Switch to the Finder for a moment, go to Go->Go to Folder... and open up /usr/local
* Drag the Trolltech folder to the file selection window in Qt Creator
* Now navigate to your installed qmake executable (/usr/local/Trolltech/Qt-4.8.3/bin/qmake) and pick it
* Open `Qt Creator` (we're going to add the newly-compiled Qt to the list of Qt versions)
* Go to `Preferences`->`Build & Run`->`Qt Versions`->`Add`
* Because the OS X file chooser will not let you get into `/usr/local`, you need to cheat to get it to show it...
* Switch to the `Finder` for a moment, go to `Go`->`Go to Folder...` and open up `/usr/local`
* Drag the `Trolltech` folder to the file selection window in Qt Creator
* Now navigate to your installed `qmake` executable (`/usr/local/Trolltech/Qt-4.8.3/bin/qmake`) and pick it
## Build the project ##
* Open the project (mac-rom-simm-programmer.software/ROMSIMMFlasher.pro) in Qt Creator
* It will ask you to create build configurations. Choose Create Build Configuration: manually
* Open the project (`mac-rom-simm-programmer.software/ROMSIMMFlasher.pro`) in Qt Creator
* It will ask you to create build configurations. Choose `Create Build Configuration: manually`
* Only check the Release version of your custom Qt 4.8.3 install
* Go to Build->Build All to build the executable
* Go to `Build`->`Build All` to build the executable
## Deploy the program ##
@ -58,4 +58,4 @@ Now the program is built, so convert it to a deployable standalone application..
Now it's ready for users!
Note: If I ever have to use more of the Qt libraries (such as WebKit), patches available on [this bug report](https://bugreports.qt-project.org/browse/QTBUG-23258) may be necessary.
Note: If I ever have to use more of the Qt libraries (such as `WebKit`), patches available on [this bug report](https://bugreports.qt-project.org/browse/QTBUG-23258) may be necessary.

BIN
Programmer.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

View File

@ -1,7 +0,0 @@
This project is a bootloader and firmware for a Macintosh ROM SIMM programmer, along with control software for Mac OS X, Windows, and Linux. The ROM SIMM is compatible with the SE/30, all II-series Macs with a 64-pin SIMM socket (should include the IIx, IIcx, IIci, IIfx, and IIsi), and the Quadra 700.
Schematics and PCB layouts for the ROM SIMM and the ROM SIMM programmer are also available for non-commercial use.
No ROM images will be distributed; this is a tool for personal exploration.
![http://wiki.mac-rom-simm-programmer.googlecode.com/git-history/master/IMG_0587_shrunk_more.jpg](http://wiki.mac-rom-simm-programmer.googlecode.com/git-history/master/IMG_0587_shrunk_more.jpg)

27
README.md Normal file
View File

@ -0,0 +1,27 @@
# Macintosh ROM SIMM programmer
This project is a [bootloader](https://github.com/dougg3/mac-rom-simm-programmer.bootloader) and [firmware](https://github.com/dougg3/mac-rom-simm-programmer.software) for a Macintosh ROM SIMM programmer, along with [control software](https://github.com/dougg3/mac-rom-simm-programmer) for Mac OS X, Windows, and Linux plus a [Windows INF USB driver](https://github.com/dougg3/mac-rom-simm-programmer.windriver). The ROM SIMM is compatible with the SE/30, all II-series Macs with a 64-pin SIMM socket (should include the IIx, IIcx, IIci, IIfx, and IIsi), and the Quadra 700.
The programmer and software supports 2 MB and 8 MB SIMMs.
[Schematics and PCB layouts](https://github.com/dougg3/mac-rom-simm-programmer.cad) for the ROM SIMM and the ROM SIMM programmer are also available for non-commercial use.
No ROM images will be distributed; this is a tool for personal exploration.
# Images (click on them for a larger version):
- Programmer with 8 MB SIMM
[![IMG_0587_shrunk_more.jpg](IMG_0587_shrunk_more.jpg)](IMG_0587_shrunk_more.jpg)
- Programmer
[![Programmer_adjusted_653px_wide.jpg](Programmer_adjusted_653px_wide.jpg)](Programmer.jpg)
- 2 MB SIMM
[![2MB_adjusted_653px_wide.jpg](2MB_adjusted_653px_wide.jpg)](2MB.jpg)
- 8 MB SIMM
[![8MB_adjusted_653px_wide.jpg](8MB_adjusted_653px_wide.jpg)](8MB.jpg)