2017年12月7日木曜日

[ソフト][MacOS][MacBook] MPW Compatibility Layer~MacOS上でMPWシェルコマンドを使う


MPW Compatibility Layer
記事をクリップするクリップ追加
書庫無題
カテゴリその他コンピュータ
2017/10/23(月) 午後 9:17
macOS上でMPW シェルコマンドを使えるようにする、MPW Compatibility Layer をインストールしてみます。
https://github.com/ksherlock/mpw/releases
からコンパイル済みモジュールをダウンロード。
現時点では Release 0.8.0 が最新です。
mpw-0.8.0.zip
mpw-config-0.8.0.zip
$ unzip mpw-0.8.0.zip
$ sudo mv mpw /usr/local/bin
$ open mpw-config-0.8.0.zip
$ sudo mv mpw /usr/local/share/
$mpw
MPW 0.8.0
Usage: mpw [options] utility ...
 --help              display usage information
 --trace-cpu         print cpu information
 --trace-macsbug     print macsbug names
 --trace-toolbox     print toolbox calls
 --trace-mpw         print mpw calls
 --memory-stats      print memory usage information
 --ram=      set the ram size.  Default=16M
 --stack=    set the stack size.  Default=8K
$ mpw help asmiigs
AsmIIGS [option?] [file?]  < file > listing ? progress
    -blksize blocks         # use blocks * 512 byte I/O buffers
    -case on                # distinguish between upper and lower case
    -case obj[ect]          # preserve case in object file
    -case off               # ignore case (default)
    -c[heck]                # syntax check only, don't create object file
    -d[efine] name          # equivalent to: name EQU 1
    -d[efine] name=value    # equivalent to: name EQU value
    -d[efine] &name         # equivalent to: &name SET[AC] 1
    -d[efine] &name=value   # equivalent to: &name SET[AC] value
    -f                      # suppress page ejects in listing
    -font name[,size]       # set listing font and size
    -h                      # suppress page headers in listing
    -i directory,?          # search for includes in directory,?
    -l                      # write full listing to output
    -lo file                # listing output file or directory
    -m                      # provide more target address information (l is also required)
    -o objname              # generate code in file or directory objname
    -pagesize l[,w]         # set listing page length and width
    -print mode             # equivalent to: PRINT mode
    -p                      # write progress information to diagnostics
    -s                      # write short listing to output
    -t                      # write time and total lines to diagnostics
    -w                      # suppress warnings
うまくいったようです。
あとは、/usr/local/share/mpw の下に、必要なファイルをコピーしていけば良いようです。
        
Apple IIGS
https://blogs.yahoo.co.jp/ushi_cow
https://blogs.yahoo.co.jp/ushi_cow/MYBLOG/yblog.html?m=lc&p=10
https://blogs.yahoo.co.jp/ushi_cow/MYBLOG/yblog.html?m=lc&p=23
https://blogs.yahoo.co.jp/ushi_cow/MYBLOG/yblog.html
             
             
             
           
             
            
               
          
   
            
               
           
          

MPW Compatibility Layer with MPW IIGS and ORCA/C
書庫GS
カテゴリその他コンピュータ
2017/10/24(火) 午後 10:03
MPW Compatibility Layer で IIGS の開発環境を構築します。
以前入れた環境を ~/mpw に移すため、一旦全部やり直します。
$ rm -r /usr/local/share/mpw
$ rm /usr/local/bin/mpw
コンパイル済み mpw は、--shell オプションを認識しないので、ソースから入れ直します。
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
$ brew -v
Homebrew 1.3.6
$ brew doctor
Your system is ready to brew.
$ brew install cmake
$ brew install ragel
$ brew install lemon
$ cd ~/Desktop
$ git clone https://github.com/ksherlock/mpw.git
$ cd mpw
$ mkdir build
$ cd build
$ cmake ..
$ make
$ make install
$ cd ~/Desktop
$ rm -rf mpw
$ mpw --shell
MPW 0.8.0
Usage: mpw [options] utility ...
 --help              display usage information
 --trace-cpu         print cpu information
 --trace-macsbug     print macsbug names
 --trace-toolbox     print toolbox calls
 --trace-mpw         print mpw calls
 --memory-stats      print memory usage information
 --ram=      set the ram size.  Default=16M
 --stack=    set the stack size.  Default=8K
https://github.com/ksherlock/mpw/releasesから
mpw-config-0.8.0.zipをダウンロード。
$ cd ~/Download
$ open mpw-config-0.8.0.zip
$ mv mpw ~/
mpw-shellをインストール。
https://github.com/ksherlock/mpw-shell/releases/tag/0.4
から、mpw-shell-0.4.zipをダウンロード
$ cd ~/Download
$ open mpw-shell-0.4.zip
$ cp -a mpw-shell-0.4/mpw-shell /usr/local/bin
$ cp -a mpw-shell-0.4/mpw-make /usr/local/bin
$ cp -a mpw-shell-0.4/etc/Startup ~/mpw
Finder で mpw-shell-0.4/etc の MPW Shell.terminal をダブルクリック。
Terminal で MPW Shell が起動する。
環境設定 シェルに MPW Shell が登録されるので、次からはシェル/新規ウィンドウで MPW Shell を選べば、MPW Shell が起動する。
MPW-Toolsをインストール
https://github.com/ksherlock/mpw-tools/releases
から tools.tgz をダウンロード
$ cd ~/Download
$ open Tools.tgz
$ mv Tools/* ~/mpw/Tools
$ rm -r Tools
mpw-gm.img をダウンロード。macOSではマウントできないので、ディスクユーティリティで .dmg に変換してマウント。
$ cd /Volumes/MPW-GM/MPW-GM/MPW
$ mkdir ~/mpw/3.5
$ cp -a Tools ~/mpw/3.5
$ cd /Volumes/MPW-GM/MPW-GM/Interfaces\&Libraries
$ cp -a Interfaces ~/mpw/3.5
$ cp -a Libraries ~/mpw/3.5
$ cd ~/mpw/3.5
$ ln -s ../Help .
Golden Orchard をダウンロードし、Golden Orchard 1.2.iso をマウント
$ cd /Volumes/Golden\ Orchard/Programming/Apple/Development\ Tools/For\ MPW\ IIGS/
$ cp -a Tools/* ~/mpw/Tools
$ cp -a Interfaces/* ~/mpw/Interfaces/
$ cp -a Libraries/* ~/mpw/Libraries/
テスト
$ cp -a /Volumes/Golden\ Orchard/Programming/Apple/Development\ Tools/For\ MPW\ IIGS/Examples/PIIGSExamples ~/Desktop
$ cd ~/Desktop/PIIGSExamples/BusyBox.p/
$ mpw-make
  pascaliigs uglobals.p -o :objs:
  pascaliigs uwindow.p -o :objs:
  pascaliigs umenu.p -o :objs:
  pascaliigs uevent.p -o :objs:
  pascaliigs busy.p -o :objs:
  LinkIIGS "/Users/atsushi/mpw/Libraries:PIIGSLibraries:"pstart.obj :objs:uglobals.p.obj :objs:uwindow.p.obj :objs:umenu.p.obj :objs:uevent.p.obj :objs:busy.p.obj -lib "/Users/atsushi/mpw/Libraries:PIIGSLibraries:"plib -o :objs:busybox.load -t $B3
  reziigs busybox.r -o :objs:busybox.res
  duplicate -y -d :objs:"busybox".load p."busybox"
  duplicate -y -r :objs:"busybox".res p."busybox"
$ cd ../ActionNDA.p/
$ mpw-make
  AsmIIGS NDAHeader.aii
  PascalIIGS -r ActionNDA.p
  LinkIIGS -t NDA NDAHeader.aii.obj ActionNDA.p.obj -lib "/Users/atsushi/mpw/Libraries:PIIGSLibraries:"PLib -o "ActionNDA"
$ mpw SetFile -c pdos -t PS16 p.busybox
GSPlus で動かしてみます。
イメージ 2
Opus ][ をマウント
$ cd /Volumes/Opus\ \]\[\ The\ Software/GS-24\ MPW-IIGS\ ORCA\:C/
$ cp -a Tools/* ~/mpw/Tools/
$ cp -a ORCACDefs/* ~/mpw/ORCACDefs/
$ cp -a ORCACLibraries ~/mpw/Libraries/
テスト
$ cp -a /Volumes/Opus\ \]\[\ The\ Software/ByteWorks/ORCA/C.Samples/Desktop.Samples ~/Desktop
$ cd ~/Desktop/Desktop.Samples
$ mpw cciigs -y MiniCAD.cc
-y オプションを付けないと、無限大の sym ファイルができます。
$ mpw linkiigs MiniCAD.cc.o -lib ~/mpw/Libraries/ORCACLibraries/ORCACLib -o MiniCAD
GSPlus で動かしてみます。
        
Apple IIGS
https://blogs.yahoo.co.jp/ushi_cow
https://blogs.yahoo.co.jp/ushi_cow/MYBLOG/yblog.html?m=lc&p=10
https://blogs.yahoo.co.jp/ushi_cow/MYBLOG/yblog.html?m=lc&p=23
https://blogs.yahoo.co.jp/ushi_cow/MYBLOG/yblog.html
             
             
             



           
         


0 件のコメント:

コメントを投稿