---
title: Apple II 軟體
image: https://imgur.com/gallery/z9wh39H
description: 關於 Apple ][ 的資料整理, 參考臉書社團 "台灣 Apple II 同學會" https://www.facebook.com/groups/taiwanappleii
---
# Apple II 軟體
Apple II 官方文件 - 軟體相關
---
* [The Applesoft Tutorial](https://archive.org/stream/The_Applesoft_Tutorial)
* [Apple II BASIC Programming Manual .pdf](http://cini.classiccmp.org/pdf/Apple/Apple%20II%20Basic%20Programming%20Manual.pdf)
* [Applesoft BASIC Programming Reference Manual](https://www.scribd.com/doc/232832/Applesoft-Basic-Programming-Reference-Manual)
OS 類 - System ROM / Monitor / 機器語言 / 組合語言
---
* 進入 / 離開 Apple Monitor
* CALL-151 - 從 DOS 進入 Monitor
* CTRL+B 從 MONITOR 回到 DOS BASIC
* CTRL+C 從 MONITOR 重回到 DOS BASIC
* 3D0G 同樣功能,從 MONITOR 回到 DOS BASIC (待確定)
* Apple Monitor 指令
* [Apple Monitor 指令彙總](http://www.easy68k.com/paulrsm/6502/MONREF.HTM)
* 常用 Apple Monitor 指令 (以下位址都是以 16 進位表示, 無須附加 $ 或 H 於英數字前後)
* {adrs} - 檢查 adrs 位址的內容值
* {adrs1}.{adrs2} - 檢視 adrs1 到 adrs2 位址的內容值
* {adrs}:{val} {val} ... - 修改 RAM 位址內容
* {adrs}L - 列出 adrs 位址的反組譯語言 (disassembly) 內容
* {adrs}G - 從 adrs 位址執行機器語言
* {dest}<{start}.{end}M - 複製 {start}.{end} 範圍的內容值到 {dest} 為首的位址. (M=move)
* {dest}<{start}.{end}V - 比較 {start}.{end} 範圍的內容值到 {dest} 為首的位址. (V=Verify)
* Control-B - 回到 Apple BASIC (ROM cold start at $E000).
* Control-C - 重新回到 Apple BASIC (ROM warm start at $E003).
* Apple Monitor 下可使用程式範圍
* $0300 - $03CF
* $0C00 - $1FFF : 如果 BASIC 程式太長或是變數太多, 此段程式可能會被覆蓋
* 6502 assembly
* [Assembly Cookbook for Apple II/IIe](https://mirrors.apple2.org.za/ftp.apple.asimov.net/documentation/programming/6502assembly/Assembly_Cookbook_for_the_Apple_II_IIe.pdf)
* 第 216 頁的 empty shell 程式提供了撰寫 assembly 的標準環境, 包括環境參數的設定
* [6502 CPU 指令集](https://www.masswerk.at/6502/6502_instruction_set.html)
* [6502 Assembly 檔案集錦](https://www.apple.asimov.net/documentation/programming/6502assembly/)
* [APPLE II 的 CALL, PEEK, POKE 詳細列表連結](http://web.archive.org/web/20090315100335/http://www.skepticfiles.org/cowtext/apple/memorytx.htm), 或是 [Stackoverflow 說明](https://stackoverflow.com/questions/143374/call-151-what-did-it-do-on-the-apple)
* 常用的 CALL, PEEK, POKE 列表
* CALL-151 進入系統 ROM 的 MONITOR
* CALL-198 發聲 (同 CONTROL+G 功能)
* [James Davis 完整復現 Apple II+ ROM 的反組譯程式](https://6502disassembly.com/a2-rom/)
* [Apple II+ ROM 內容\$C000-\$FFFF](https://6502disassembly.com/a2-rom/APPLE2.ROM.html)
* [下載 .ZIP](https://6502disassembly.com/a2-rom/Apple%20II%20Plus%20ROM%20Disassembly.zip)
* [Apple II 系統軟體逆向工程原始碼 - 網頁說明](http://cmosher01.github.io/Apple-II-Source/)
* [github 原始碼 - 包含 System ROM 及 DOS 3.3](https://github.com/cmosher01/Apple-II-Source)
* 原始碼由 [GNU M4](https://www.gnu.org/software/m4/manual/m4.html) 預處理, [xa65 Assembler](http://www.floodgap.com/retrotech/xa/) 解譯.
OS 類 - DOS 3.3 及 ProDOS
---
* [DOS 指令及 FAQ](https://fjkraan.home.xs4all.nl/comp/apple2faq/app2doscmdfaq.html)
* CATALOG - Shows a directory listing.
* CATALOG D2 - 顯示第二個磁碟機目錄
* LOAD filename - Loads a Applesoft BASIC program.
* SAVE filename - Saves a Applesoft BASIC program.
* RUN filename - Loads and runs a Applesoft BASIC program.
* BLOAD filename - Loads a binary file.
* BLOAD filename,Addr 出現 SYNTAX ERROR, 奇怪
* BSAVE filename,Aaddr,Llen - Saves a binary file.
* BRUN filename - Loads and executes a binary file
* OPEN filename - Opens a text file. For BASIC programs only.
* CLOSE [filename] - Closes specified (or all) open text files.
* READ filename - Reads from a text file. For BASIC programs only.
* [ProDOS - Professional Disk Operating System](https://prodos8.com/about/)
OS 類 - Apple BASIC
---
* [Apple II BASIC Programming Manual .pdf](http://cini.classiccmp.org/pdf/Apple/Apple%20II%20Basic%20Programming%20Manual.pdf)
* 基本 BASIC 指令
* NEW - 清除程式
* LIST - 列印程式 (於螢幕上顯示)
* RUN - 執行程式
* [Microsoft BASIC for 6502 Original Source Code - 1978](https://www.pagetable.com/?p=774): original 1978 source code of Microsoft BASIC for 6502 with all original comments, documentation and easter eggs - [M6502.MAC](https://www.pagetable.com/docs/M6502.MAC.txt) (1978-07-27, 6955 lines, 161,685 bytes)
應用類 - 質數問題的 Apple BASIC 與 Assembly 速度比較
---
* 找出質數數量的程式來比較 Assembly 跟 BASIC 執行速度上的差別 - 50 倍
* [github - Apple BASIC vs 6502 Assembly](https://github.com/marconi1964/AppleBASICvs6502Assembly)
遊戲類
---
* [Lode Runner](/@AppleIITaiwan/LodeRunner)