Compare commits
No commits in common. "master" and "gh-pages" have entirely different histories.
817 changed files with 584 additions and 207076 deletions
180
.github/workflows/ppa-release.yml
vendored
180
.github/workflows/ppa-release.yml
vendored
|
@ -1,180 +0,0 @@
|
|||
name: Release
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
schedule:
|
||||
- cron: '0 0 * * *'
|
||||
|
||||
jobs:
|
||||
build_rpm:
|
||||
env:
|
||||
REPO_URL: ${{ github.server_url }}/audetto/AppleWin
|
||||
runs-on: ubuntu-18.04
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
- os_name: fedora
|
||||
os_codename: '34'
|
||||
build_type: 'QT'
|
||||
|
||||
- os_name: fedora
|
||||
os_codename: '35'
|
||||
build_type: 'QT'
|
||||
|
||||
container: ${{ matrix.os_name }}:${{ matrix.os_codename }}
|
||||
|
||||
steps:
|
||||
- run: dnf -y update && dnf -y install git ca-certificates curl gpg rsync file && dnf clean all
|
||||
|
||||
- name: Import GPG key
|
||||
id: import_gpg
|
||||
uses: crazy-max/ghaction-import-gpg@v4
|
||||
with:
|
||||
gpg_private_key: ${{ secrets.PACKAGE_SIGNING_KEY }}
|
||||
passphrase: ''
|
||||
|
||||
- run: git config --global --add safe.directory /__w/AppleWin/AppleWin && git init && git remote add origin "$REPO_URL" && git fetch origin ${{ github.ref }} && git checkout ${{ github.ref_name }} && git submodule init && git submodule update
|
||||
|
||||
- run: CPACK_TYPE=RPM INSTALL_DEPS=${{ matrix.build_type }} bash ./source/linux/build.sh
|
||||
|
||||
- run: cd build/packages && rm -rf ./_CPack_Packages
|
||||
- run: cd build/packages && dpkg-scanpackages --multiversion . > Packages
|
||||
- run: cd build/packages && gzip -k -f Packages
|
||||
|
||||
- run: cd build/packages && apt-ftparchive release . > Release
|
||||
- run: cd build/packages && gpg --default-key "${{ secrets.PACKAGE_SIGNING_EMAIL }}" -abs -o - Release > Release.gpg
|
||||
- run: cd build/packages && gpg --default-key "${{ secrets.PACKAGE_SIGNING_EMAIL }}" --clearsign -o - Release > InRelease
|
||||
|
||||
- uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ matrix.os_name }}-${{ matrix.os_codename }}
|
||||
path: ./build/packages/**/*
|
||||
|
||||
|
||||
|
||||
build_deb:
|
||||
env:
|
||||
DEBIAN_FRONTEND: noninteractive
|
||||
REPO_URL: ${{ github.server_url }}/audetto/AppleWin
|
||||
|
||||
runs-on: ubuntu-18.04
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
- os_name: debian
|
||||
os_codename: bullseye
|
||||
build_type: 'QT'
|
||||
has_backports: backports
|
||||
|
||||
- os_name: debian
|
||||
os_codename: bookworm
|
||||
build_type: 'QT'
|
||||
|
||||
|
||||
- os_name: ubuntu
|
||||
os_codename: bionic
|
||||
is_lts: lts
|
||||
build_type: 'WITHOUT_QT'
|
||||
|
||||
- os_name: ubuntu
|
||||
os_codename: focal
|
||||
is_lts: lts
|
||||
build_type: 'QT'
|
||||
|
||||
- os_name: ubuntu
|
||||
os_codename: hirsute
|
||||
build_type: 'QT'
|
||||
|
||||
- os_name: ubuntu
|
||||
os_codename: impish
|
||||
build_type: 'QT'
|
||||
|
||||
container: ${{ matrix.os_name }}:${{ matrix.os_codename }}
|
||||
|
||||
steps:
|
||||
- run: apt-get update && apt-get install -y --no-install-recommends git ca-certificates apt-transport-https curl gpg gpg-agent lsb-release dpkg-dev apt-utils rsync file
|
||||
|
||||
- name: Import GPG key
|
||||
id: import_gpg
|
||||
uses: crazy-max/ghaction-import-gpg@v4
|
||||
with:
|
||||
gpg_private_key: ${{ secrets.PACKAGE_SIGNING_KEY }}
|
||||
passphrase: ''
|
||||
|
||||
- if: matrix.has_backports == 'backports'
|
||||
run: echo 'deb http://deb.debian.org/debian ${{ matrix.os_codename }}-backports main' >> /etc/apt/sources.list
|
||||
|
||||
- if: matrix.is_lts == 'lts'
|
||||
run: curl -L https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | tee /usr/share/keyrings/kitware-archive-keyring.gpg >/dev/null
|
||||
- if: matrix.is_lts == 'lts'
|
||||
run: echo "deb [signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/${{ matrix.os_name }}/ $(lsb_release -cs) main" | tee /etc/apt/sources.list.d/kitware.list >/dev/null
|
||||
|
||||
- run: git config --global --add safe.directory /__w/AppleWin/AppleWin && git init && git remote add origin "$REPO_URL" && git fetch origin ${{ github.ref }} && git checkout ${{ github.ref_name }} && git submodule init && git submodule update
|
||||
|
||||
- run: INSTALL_DEPS=${{ matrix.build_type }} bash ./source/linux/build.sh
|
||||
|
||||
- run: cd build/packages && rm -rf ./_CPack_Packages
|
||||
- run: cd build/packages && dpkg-scanpackages --multiversion . > Packages
|
||||
- run: cd build/packages && gzip -k -f Packages
|
||||
|
||||
- run: cd build/packages && apt-ftparchive release . > Release
|
||||
- run: cd build/packages && gpg --default-key "${{ secrets.PACKAGE_SIGNING_EMAIL }}" -abs -o - Release > Release.gpg
|
||||
- run: cd build/packages && gpg --default-key "${{ secrets.PACKAGE_SIGNING_EMAIL }}" --clearsign -o - Release > InRelease
|
||||
|
||||
- uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ matrix.os_name }}-${{ matrix.os_codename }}
|
||||
path: ./build/packages/**/*
|
||||
|
||||
deploy:
|
||||
needs:
|
||||
- build_deb
|
||||
- build_rpm
|
||||
|
||||
runs-on: ubuntu-18.04
|
||||
|
||||
strategy:
|
||||
max-parallel: 1
|
||||
matrix:
|
||||
include:
|
||||
- os_name: fedora
|
||||
os_codename: '34'
|
||||
- os_name: fedora
|
||||
os_codename: '35'
|
||||
|
||||
- os_name: debian
|
||||
os_codename: bullseye
|
||||
- os_name: debian
|
||||
os_codename: bookworm
|
||||
|
||||
- os_name: ubuntu
|
||||
os_codename: bionic
|
||||
- os_name: ubuntu
|
||||
os_codename: focal
|
||||
- os_name: ubuntu
|
||||
os_codename: hirsute
|
||||
- os_name: ubuntu
|
||||
os_codename: impish
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
repository: audetto/AppleWin
|
||||
fetch-depth: 1
|
||||
ref: ${{ github.event.inputs.tag }}
|
||||
|
||||
- uses: actions/download-artifact@v2
|
||||
with:
|
||||
name: ${{ matrix.os_name }}-${{ matrix.os_codename }}
|
||||
path: packages
|
||||
|
||||
- name: Deploy
|
||||
uses: JamesIves/github-pages-deploy-action@v4.3.0
|
||||
with:
|
||||
branch: gh-pages
|
||||
folder: packages
|
||||
target-folder: packages/${{ matrix.os_name }}/dists/${{ matrix.os_codename }}
|
3
.gitignore
vendored
3
.gitignore
vendored
|
@ -134,9 +134,6 @@ publish/
|
|||
# NuGet Packages
|
||||
*.nupkg
|
||||
# The packages folder can be ignored because of Package Restore
|
||||
**/packages/*
|
||||
# except build/, which is used as an MSBuild target.
|
||||
!**/packages/build/
|
||||
# If using the old MSBuild-Integrated Package Restore, uncomment this:
|
||||
#!**/packages/repositories.config
|
||||
|
||||
|
|
9
.gitmodules
vendored
9
.gitmodules
vendored
|
@ -1,9 +0,0 @@
|
|||
[submodule "source/frontends/qt/QHexView"]
|
||||
path = source/frontends/qt/QHexView
|
||||
url = ../../Dax89/QHexView.git
|
||||
[submodule "source/frontends/sdl/imgui/imgui"]
|
||||
path = source/frontends/sdl/imgui/imgui
|
||||
url = ../../ocornut/imgui
|
||||
[submodule "source/frontends/sdl/imgui/imgui_club"]
|
||||
path = source/frontends/sdl/imgui/imgui_club
|
||||
url = ../../ocornut/imgui_club
|
38
.travis.yml
38
.travis.yml
|
@ -1,38 +0,0 @@
|
|||
language: cpp
|
||||
|
||||
branches:
|
||||
only:
|
||||
- master
|
||||
|
||||
matrix:
|
||||
include:
|
||||
|
||||
# disabled as too expensive
|
||||
# - name: "AppleWin on Windows"
|
||||
# os: windows
|
||||
# script: ./CIBuild.bat
|
||||
|
||||
- name: "AppleWin on Linux"
|
||||
os: linux
|
||||
dist: focal
|
||||
arch: amd64
|
||||
|
||||
script: source/linux/build.sh
|
||||
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- cmake
|
||||
- libyaml-dev
|
||||
- libminizip-dev
|
||||
- qtbase5-dev
|
||||
- qtmultimedia5-dev
|
||||
- libqt5gamepad5-dev
|
||||
- libboost-program-options-dev
|
||||
- libncurses-dev
|
||||
- libevdev-dev
|
||||
- libsdl2-dev
|
||||
- libsdl2-image-dev
|
||||
- libgles-dev
|
||||
- libpcap-dev
|
||||
- libslirp-dev
|
|
@ -1,57 +0,0 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 10.00
|
||||
# Visual C++ Express 2008
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Applewin", "AppleWinExpress2008.vcproj", "{1DA0C491-B5F4-4EC8-B1D2-CF6BE635DADC}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{5CE8051A-3F0C-4C39-B1C0-3338E48BA60F} = {5CE8051A-3F0C-4C39-B1C0-3338E48BA60F}
|
||||
{7935B998-C713-42AE-8F6D-9FF9080A1B1B} = {7935B998-C713-42AE-8F6D-9FF9080A1B1B}
|
||||
{2CC8CA9F-E37E-41A4-BFAD-77E54EB783A2} = {2CC8CA9F-E37E-41A4-BFAD-77E54EB783A2}
|
||||
{709278B8-C583-4BD8-90DE-4E4F35A3BD8B} = {709278B8-C583-4BD8-90DE-4E4F35A3BD8B}
|
||||
{0AE28CF0-15B0-4DDF-B6D2-4562D8E456BB} = {0AE28CF0-15B0-4DDF-B6D2-4562D8E456BB}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zlib", "zlib\zlib-Express2008.vcproj", "{7935B998-C713-42AE-8F6D-9FF9080A1B1B}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zip_lib", "zip_lib\zip_lib2008.vcproj", "{709278B8-C583-4BD8-90DE-4E4F35A3BD8B}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TestCPU6502", "test\TestCPU6502\TestCPU6502-vs2008.vcproj", "{2CC8CA9F-E37E-41A4-BFAD-77E54EB783A2}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "yaml", "libyaml\win32\yaml2008.vcproj", "{5CE8051A-3F0C-4C39-B1C0-3338E48BA60F}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TestDebugger", "test\TestDebugger\TestDebugger.vcproj", "{0AE28CF0-15B0-4DDF-B6D2-4562D8E456BB}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Win32 = Debug|Win32
|
||||
Release|Win32 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{1DA0C491-B5F4-4EC8-B1D2-CF6BE635DADC}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{1DA0C491-B5F4-4EC8-B1D2-CF6BE635DADC}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{1DA0C491-B5F4-4EC8-B1D2-CF6BE635DADC}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{1DA0C491-B5F4-4EC8-B1D2-CF6BE635DADC}.Release|Win32.Build.0 = Release|Win32
|
||||
{7935B998-C713-42AE-8F6D-9FF9080A1B1B}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{7935B998-C713-42AE-8F6D-9FF9080A1B1B}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{7935B998-C713-42AE-8F6D-9FF9080A1B1B}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{7935B998-C713-42AE-8F6D-9FF9080A1B1B}.Release|Win32.Build.0 = Release|Win32
|
||||
{709278B8-C583-4BD8-90DE-4E4F35A3BD8B}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{709278B8-C583-4BD8-90DE-4E4F35A3BD8B}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{709278B8-C583-4BD8-90DE-4E4F35A3BD8B}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{709278B8-C583-4BD8-90DE-4E4F35A3BD8B}.Release|Win32.Build.0 = Release|Win32
|
||||
{2CC8CA9F-E37E-41A4-BFAD-77E54EB783A2}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{2CC8CA9F-E37E-41A4-BFAD-77E54EB783A2}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{2CC8CA9F-E37E-41A4-BFAD-77E54EB783A2}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{2CC8CA9F-E37E-41A4-BFAD-77E54EB783A2}.Release|Win32.Build.0 = Release|Win32
|
||||
{5CE8051A-3F0C-4C39-B1C0-3338E48BA60F}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{5CE8051A-3F0C-4C39-B1C0-3338E48BA60F}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{5CE8051A-3F0C-4C39-B1C0-3338E48BA60F}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{5CE8051A-3F0C-4C39-B1C0-3338E48BA60F}.Release|Win32.Build.0 = Release|Win32
|
||||
{0AE28CF0-15B0-4DDF-B6D2-4562D8E456BB}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{0AE28CF0-15B0-4DDF-B6D2-4562D8E456BB}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{0AE28CF0-15B0-4DDF-B6D2-4562D8E456BB}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{0AE28CF0-15B0-4DDF-B6D2-4562D8E456BB}.Release|Win32.Build.0 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
File diff suppressed because it is too large
Load diff
|
@ -1,99 +0,0 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 16
|
||||
VisualStudioVersion = 16.0.29201.188
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "AppleWin", "AppleWinExpress2019.vcxproj", "{0A960136-A00A-4D4B-805F-664D9950D2CA}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{CF5A49BF-62A5-41BB-B10C-F34D556A7A45} = {CF5A49BF-62A5-41BB-B10C-F34D556A7A45}
|
||||
{0212E0DF-06DA-4080-BD1D-F3B01599F70F} = {0212E0DF-06DA-4080-BD1D-F3B01599F70F}
|
||||
{509739E7-0AF3-4C09-A1A9-F0B1BC31B39D} = {509739E7-0AF3-4C09-A1A9-F0B1BC31B39D}
|
||||
{9B32A6E7-1237-4F36-8903-A3FD51DF9C4E} = {9B32A6E7-1237-4F36-8903-A3FD51DF9C4E}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zip_lib", "zip_lib\zip_lib2019.vcxproj", "{509739E7-0AF3-4C09-A1A9-F0B1BC31B39D}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zlib", "zlib\zlib-Express2019.vcxproj", "{9B32A6E7-1237-4F36-8903-A3FD51DF9C4E}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "yaml", "libyaml\win32\yaml2019.vcxproj", "{0212E0DF-06DA-4080-BD1D-F3B01599F70F}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TestCPU6502", "test\TestCPU6502\TestCPU6502-vs2019.vcxproj", "{CF5A49BF-62A5-41BB-B10C-F34D556A7A45}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug NoDX|Win32 = Debug NoDX|Win32
|
||||
Debug v141_xp|Win32 = Debug v141_xp|Win32
|
||||
Debug|Win32 = Debug|Win32
|
||||
Release NoDX|Win32 = Release NoDX|Win32
|
||||
Release v141_xp|Win32 = Release v141_xp|Win32
|
||||
Release|Win32 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{0A960136-A00A-4D4B-805F-664D9950D2CA}.Debug NoDX|Win32.ActiveCfg = Debug NoDX|Win32
|
||||
{0A960136-A00A-4D4B-805F-664D9950D2CA}.Debug NoDX|Win32.Build.0 = Debug NoDX|Win32
|
||||
{0A960136-A00A-4D4B-805F-664D9950D2CA}.Debug v141_xp|Win32.ActiveCfg = Debug v141_xp|Win32
|
||||
{0A960136-A00A-4D4B-805F-664D9950D2CA}.Debug v141_xp|Win32.Build.0 = Debug v141_xp|Win32
|
||||
{0A960136-A00A-4D4B-805F-664D9950D2CA}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{0A960136-A00A-4D4B-805F-664D9950D2CA}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{0A960136-A00A-4D4B-805F-664D9950D2CA}.Release NoDX|Win32.ActiveCfg = Release NoDX|Win32
|
||||
{0A960136-A00A-4D4B-805F-664D9950D2CA}.Release NoDX|Win32.Build.0 = Release NoDX|Win32
|
||||
{0A960136-A00A-4D4B-805F-664D9950D2CA}.Release v141_xp|Win32.ActiveCfg = Release v141_xp|Win32
|
||||
{0A960136-A00A-4D4B-805F-664D9950D2CA}.Release v141_xp|Win32.Build.0 = Release v141_xp|Win32
|
||||
{0A960136-A00A-4D4B-805F-664D9950D2CA}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{0A960136-A00A-4D4B-805F-664D9950D2CA}.Release|Win32.Build.0 = Release|Win32
|
||||
{509739E7-0AF3-4C09-A1A9-F0B1BC31B39D}.Debug NoDX|Win32.ActiveCfg = Debug|Win32
|
||||
{509739E7-0AF3-4C09-A1A9-F0B1BC31B39D}.Debug NoDX|Win32.Build.0 = Debug|Win32
|
||||
{509739E7-0AF3-4C09-A1A9-F0B1BC31B39D}.Debug v141_xp|Win32.ActiveCfg = Debug v141_xp|Win32
|
||||
{509739E7-0AF3-4C09-A1A9-F0B1BC31B39D}.Debug v141_xp|Win32.Build.0 = Debug v141_xp|Win32
|
||||
{509739E7-0AF3-4C09-A1A9-F0B1BC31B39D}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{509739E7-0AF3-4C09-A1A9-F0B1BC31B39D}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{509739E7-0AF3-4C09-A1A9-F0B1BC31B39D}.Release NoDX|Win32.ActiveCfg = Release|Win32
|
||||
{509739E7-0AF3-4C09-A1A9-F0B1BC31B39D}.Release NoDX|Win32.Build.0 = Release|Win32
|
||||
{509739E7-0AF3-4C09-A1A9-F0B1BC31B39D}.Release v141_xp|Win32.ActiveCfg = Release v141_xp|Win32
|
||||
{509739E7-0AF3-4C09-A1A9-F0B1BC31B39D}.Release v141_xp|Win32.Build.0 = Release v141_xp|Win32
|
||||
{509739E7-0AF3-4C09-A1A9-F0B1BC31B39D}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{509739E7-0AF3-4C09-A1A9-F0B1BC31B39D}.Release|Win32.Build.0 = Release|Win32
|
||||
{9B32A6E7-1237-4F36-8903-A3FD51DF9C4E}.Debug NoDX|Win32.ActiveCfg = Debug|Win32
|
||||
{9B32A6E7-1237-4F36-8903-A3FD51DF9C4E}.Debug NoDX|Win32.Build.0 = Debug|Win32
|
||||
{9B32A6E7-1237-4F36-8903-A3FD51DF9C4E}.Debug v141_xp|Win32.ActiveCfg = Debug v141_xp|Win32
|
||||
{9B32A6E7-1237-4F36-8903-A3FD51DF9C4E}.Debug v141_xp|Win32.Build.0 = Debug v141_xp|Win32
|
||||
{9B32A6E7-1237-4F36-8903-A3FD51DF9C4E}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{9B32A6E7-1237-4F36-8903-A3FD51DF9C4E}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{9B32A6E7-1237-4F36-8903-A3FD51DF9C4E}.Release NoDX|Win32.ActiveCfg = Release|Win32
|
||||
{9B32A6E7-1237-4F36-8903-A3FD51DF9C4E}.Release NoDX|Win32.Build.0 = Release|Win32
|
||||
{9B32A6E7-1237-4F36-8903-A3FD51DF9C4E}.Release v141_xp|Win32.ActiveCfg = Release v141_xp|Win32
|
||||
{9B32A6E7-1237-4F36-8903-A3FD51DF9C4E}.Release v141_xp|Win32.Build.0 = Release v141_xp|Win32
|
||||
{9B32A6E7-1237-4F36-8903-A3FD51DF9C4E}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{9B32A6E7-1237-4F36-8903-A3FD51DF9C4E}.Release|Win32.Build.0 = Release|Win32
|
||||
{0212E0DF-06DA-4080-BD1D-F3B01599F70F}.Debug NoDX|Win32.ActiveCfg = Debug|Win32
|
||||
{0212E0DF-06DA-4080-BD1D-F3B01599F70F}.Debug NoDX|Win32.Build.0 = Debug|Win32
|
||||
{0212E0DF-06DA-4080-BD1D-F3B01599F70F}.Debug v141_xp|Win32.ActiveCfg = Debug v141_xp|Win32
|
||||
{0212E0DF-06DA-4080-BD1D-F3B01599F70F}.Debug v141_xp|Win32.Build.0 = Debug v141_xp|Win32
|
||||
{0212E0DF-06DA-4080-BD1D-F3B01599F70F}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{0212E0DF-06DA-4080-BD1D-F3B01599F70F}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{0212E0DF-06DA-4080-BD1D-F3B01599F70F}.Release NoDX|Win32.ActiveCfg = Release|Win32
|
||||
{0212E0DF-06DA-4080-BD1D-F3B01599F70F}.Release NoDX|Win32.Build.0 = Release|Win32
|
||||
{0212E0DF-06DA-4080-BD1D-F3B01599F70F}.Release v141_xp|Win32.ActiveCfg = Release v141_xp|Win32
|
||||
{0212E0DF-06DA-4080-BD1D-F3B01599F70F}.Release v141_xp|Win32.Build.0 = Release v141_xp|Win32
|
||||
{0212E0DF-06DA-4080-BD1D-F3B01599F70F}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{0212E0DF-06DA-4080-BD1D-F3B01599F70F}.Release|Win32.Build.0 = Release|Win32
|
||||
{CF5A49BF-62A5-41BB-B10C-F34D556A7A45}.Debug NoDX|Win32.ActiveCfg = Debug|Win32
|
||||
{CF5A49BF-62A5-41BB-B10C-F34D556A7A45}.Debug NoDX|Win32.Build.0 = Debug|Win32
|
||||
{CF5A49BF-62A5-41BB-B10C-F34D556A7A45}.Debug v141_xp|Win32.ActiveCfg = Debug v141_xp|Win32
|
||||
{CF5A49BF-62A5-41BB-B10C-F34D556A7A45}.Debug v141_xp|Win32.Build.0 = Debug v141_xp|Win32
|
||||
{CF5A49BF-62A5-41BB-B10C-F34D556A7A45}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{CF5A49BF-62A5-41BB-B10C-F34D556A7A45}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{CF5A49BF-62A5-41BB-B10C-F34D556A7A45}.Release NoDX|Win32.ActiveCfg = Release|Win32
|
||||
{CF5A49BF-62A5-41BB-B10C-F34D556A7A45}.Release NoDX|Win32.Build.0 = Release|Win32
|
||||
{CF5A49BF-62A5-41BB-B10C-F34D556A7A45}.Release v141_xp|Win32.ActiveCfg = Release v141_xp|Win32
|
||||
{CF5A49BF-62A5-41BB-B10C-F34D556A7A45}.Release v141_xp|Win32.Build.0 = Release v141_xp|Win32
|
||||
{CF5A49BF-62A5-41BB-B10C-F34D556A7A45}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{CF5A49BF-62A5-41BB-B10C-F34D556A7A45}.Release|Win32.Build.0 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {6D58FFC0-8F43-4085-967C-EDE80FB2808C}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
|
@ -1,639 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug NoDX|Win32">
|
||||
<Configuration>Debug NoDX</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug v141_xp|Win32">
|
||||
<Configuration>Debug v141_xp</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release NoDX|Win32">
|
||||
<Configuration>Release NoDX</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release v141_xp|Win32">
|
||||
<Configuration>Release v141_xp</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="resource\resource.h" />
|
||||
<ClInclude Include="resource\winres.h" />
|
||||
<ClInclude Include="source\6522.h" />
|
||||
<ClInclude Include="source\6821.h" />
|
||||
<ClInclude Include="source\AY8910.h" />
|
||||
<ClInclude Include="source\Card.h" />
|
||||
<ClInclude Include="source\CardManager.h" />
|
||||
<ClInclude Include="source\CmdLine.h" />
|
||||
<ClInclude Include="source\Common.h" />
|
||||
<ClInclude Include="source\CommonVICE\6510core.h" />
|
||||
<ClInclude Include="source\CommonVICE\interrupt.h" />
|
||||
<ClInclude Include="source\CommonVICE\mem.h" />
|
||||
<ClInclude Include="source\CommonVICE\types.h" />
|
||||
<ClInclude Include="source\Configuration\About.h" />
|
||||
<ClInclude Include="source\Configuration\Config.h" />
|
||||
<ClInclude Include="source\Configuration\IPropertySheet.h" />
|
||||
<ClInclude Include="source\Configuration\IPropertySheetPage.h" />
|
||||
<ClInclude Include="source\Configuration\PageAdvanced.h" />
|
||||
<ClInclude Include="source\Configuration\PageConfig.h" />
|
||||
<ClInclude Include="source\Configuration\PageConfigTfe.h" />
|
||||
<ClInclude Include="source\Configuration\PageDisk.h" />
|
||||
<ClInclude Include="source\Configuration\PageInput.h" />
|
||||
<ClInclude Include="source\Configuration\PageSound.h" />
|
||||
<ClInclude Include="source\Configuration\PropertySheet.h" />
|
||||
<ClInclude Include="source\Configuration\PropertySheetDefs.h" />
|
||||
<ClInclude Include="source\Configuration\PropertySheetHelper.h" />
|
||||
<ClInclude Include="source\Core.h" />
|
||||
<ClInclude Include="source\CPU.h" />
|
||||
<ClInclude Include="source\CPU\cpu6502.h" />
|
||||
<ClInclude Include="source\CPU\cpu65C02.h" />
|
||||
<ClInclude Include="source\Debugger\Debug.h" />
|
||||
<ClInclude Include="source\Debugger\DebugDefs.h" />
|
||||
<ClInclude Include="source\Debugger\Debugger_Assembler.h" />
|
||||
<ClInclude Include="source\Debugger\Debugger_Color.h" />
|
||||
<ClInclude Include="source\Debugger\Debugger_Console.h" />
|
||||
<ClInclude Include="source\Debugger\Debugger_Disassembler.h" />
|
||||
<ClInclude Include="source\Debugger\Debugger_DisassemblerData.h" />
|
||||
<ClInclude Include="source\Debugger\Debugger_Display.h" />
|
||||
<ClInclude Include="source\Debugger\Debugger_Help.h" />
|
||||
<ClInclude Include="source\Debugger\Debugger_Parser.h" />
|
||||
<ClInclude Include="source\Debugger\Debugger_Range.h" />
|
||||
<ClInclude Include="source\Debugger\Debugger_Symbols.h" />
|
||||
<ClInclude Include="source\Debugger\Debugger_Types.h" />
|
||||
<ClInclude Include="source\Debugger\Debugger_Win32.h" />
|
||||
<ClInclude Include="source\Debugger\Util_MemoryTextFile.h" />
|
||||
<ClInclude Include="source\Debugger\Util_Text.h" />
|
||||
<ClInclude Include="source\Disk.h" />
|
||||
<ClInclude Include="source\Disk2CardManager.h" />
|
||||
<ClInclude Include="source\DiskDefs.h" />
|
||||
<ClInclude Include="source\DiskFormatTrack.h" />
|
||||
<ClInclude Include="source\DiskImage.h" />
|
||||
<ClInclude Include="source\DiskImageHelper.h" />
|
||||
<ClInclude Include="source\DiskLog.h" />
|
||||
<ClInclude Include="source\FourPlay.h" />
|
||||
<ClInclude Include="source\FrameBase.h" />
|
||||
<ClInclude Include="source\Harddisk.h" />
|
||||
<ClInclude Include="source\Interface.h" />
|
||||
<ClInclude Include="source\Joystick.h" />
|
||||
<ClInclude Include="source\Keyboard.h" />
|
||||
<ClInclude Include="source\LanguageCard.h" />
|
||||
<ClInclude Include="source\Log.h" />
|
||||
<ClInclude Include="source\Memory.h" />
|
||||
<ClInclude Include="source\Mockingboard.h" />
|
||||
<ClInclude Include="source\MouseInterface.h" />
|
||||
<ClInclude Include="source\NoSlotClock.h" />
|
||||
<ClInclude Include="source\NTSC.h" />
|
||||
<ClInclude Include="source\NTSC_CharSet.h" />
|
||||
<ClInclude Include="source\ParallelPrinter.h" />
|
||||
<ClInclude Include="source\Pravets.h" />
|
||||
<ClInclude Include="source\Registry.h" />
|
||||
<ClInclude Include="source\RGBMonitor.h" />
|
||||
<ClInclude Include="source\Riff.h" />
|
||||
<ClInclude Include="source\SAM.h" />
|
||||
<ClInclude Include="source\SaveState.h" />
|
||||
<ClInclude Include="source\SaveState_Structs_common.h" />
|
||||
<ClInclude Include="source\SaveState_Structs_v1.h" />
|
||||
<ClInclude Include="source\SerialComms.h" />
|
||||
<ClInclude Include="source\SNESMAX.h" />
|
||||
<ClInclude Include="source\SoundCore.h" />
|
||||
<ClInclude Include="source\Speaker.h" />
|
||||
<ClInclude Include="source\Speech.h" />
|
||||
<ClInclude Include="source\SSI263.h" />
|
||||
<ClInclude Include="source\SSI263Phonemes.h" />
|
||||
<ClInclude Include="source\StdAfx.h" />
|
||||
<ClInclude Include="source\StrFormat.h" />
|
||||
<ClInclude Include="source\SynchronousEventManager.h" />
|
||||
<ClInclude Include="source\Tape.h" />
|
||||
<ClInclude Include="source\Tfe\IPRaw.h" />
|
||||
<ClInclude Include="source\Tfe\NetworkBackend.h" />
|
||||
<ClInclude Include="source\Tfe\Bpf.h" />
|
||||
<ClInclude Include="source\Tfe\Ip6_misc.h" />
|
||||
<ClInclude Include="source\Tfe\Pcap.h" />
|
||||
<ClInclude Include="source\Tfe\PCapBackend.h" />
|
||||
<ClInclude Include="source\Tfe\tfearch.h" />
|
||||
<ClInclude Include="source\Tfe\tfesupp.h" />
|
||||
<ClInclude Include="source\Tfe\Uilib.h" />
|
||||
<ClInclude Include="source\Uthernet1.h" />
|
||||
<ClInclude Include="source\Uthernet2.h" />
|
||||
<ClInclude Include="source\Utilities.h" />
|
||||
<ClInclude Include="source\Video.h" />
|
||||
<ClInclude Include="Source\VidHD.h" />
|
||||
<ClInclude Include="source\W5100.h" />
|
||||
<ClInclude Include="source\Windows\AppleWin.h" />
|
||||
<ClInclude Include="source\Windows\DirectInput.h" />
|
||||
<ClInclude Include="source\Windows\HookFilter.h" />
|
||||
<ClInclude Include="source\Windows\Win32Frame.h" />
|
||||
<ClInclude Include="source\YamlHelper.h" />
|
||||
<ClInclude Include="source\z80emu.h" />
|
||||
<ClInclude Include="source\Z80VICE\daa.h" />
|
||||
<ClInclude Include="source\Z80VICE\z80.h" />
|
||||
<ClInclude Include="source\Z80VICE\z80mem.h" />
|
||||
<ClInclude Include="source\Z80VICE\z80regs.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Text Include="docs\CodingConventions.txt" />
|
||||
<Text Include="docs\Debugger_Changelog.txt" />
|
||||
<Text Include="docs\FAQ.txt" />
|
||||
<Text Include="bin\History.txt" />
|
||||
<Text Include="docs\ToDo.txt" />
|
||||
<Text Include="docs\Video_Cleanup.txt" />
|
||||
<Text Include="docs\Wishlist.txt" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="source\6522.cpp" />
|
||||
<ClCompile Include="source\6821.cpp" />
|
||||
<ClCompile Include="source\AY8910.cpp" />
|
||||
<ClCompile Include="source\Card.cpp" />
|
||||
<ClCompile Include="source\CardManager.cpp" />
|
||||
<ClCompile Include="source\CmdLine.cpp" />
|
||||
<ClCompile Include="source\Configuration\About.cpp" />
|
||||
<ClCompile Include="source\Configuration\PageAdvanced.cpp" />
|
||||
<ClCompile Include="source\Configuration\PageConfig.cpp" />
|
||||
<ClCompile Include="source\Configuration\PageConfigTfe.cpp" />
|
||||
<ClCompile Include="source\Configuration\PageDisk.cpp" />
|
||||
<ClCompile Include="source\Configuration\PageInput.cpp" />
|
||||
<ClCompile Include="source\Configuration\PageSound.cpp" />
|
||||
<ClCompile Include="source\Configuration\PropertySheet.cpp" />
|
||||
<ClCompile Include="source\Configuration\PropertySheetHelper.cpp" />
|
||||
<ClCompile Include="source\Core.cpp" />
|
||||
<ClCompile Include="source\CPU.cpp" />
|
||||
<ClCompile Include="source\Debugger\Debugger_Disassembler.cpp" />
|
||||
<ClCompile Include="source\Debugger\Debugger_Win32.cpp" />
|
||||
<ClCompile Include="source\Disk2CardManager.cpp" />
|
||||
<ClCompile Include="source\FourPlay.cpp" />
|
||||
<ClCompile Include="source\FrameBase.cpp" />
|
||||
<ClCompile Include="source\RGBMonitor.cpp" />
|
||||
<ClCompile Include="source\SAM.cpp" />
|
||||
<ClCompile Include="source\Debugger\Debug.cpp" />
|
||||
<ClCompile Include="source\Debugger\Debugger_Assembler.cpp" />
|
||||
<ClCompile Include="source\Debugger\Debugger_Color.cpp" />
|
||||
<ClCompile Include="source\Debugger\Debugger_Commands.cpp" />
|
||||
<ClCompile Include="source\Debugger\Debugger_Console.cpp" />
|
||||
<ClCompile Include="source\Debugger\Debugger_DisassemblerData.cpp" />
|
||||
<ClCompile Include="source\Debugger\Debugger_Display.cpp" />
|
||||
<ClCompile Include="source\Debugger\Debugger_Help.cpp" />
|
||||
<ClCompile Include="source\Debugger\Debugger_Parser.cpp" />
|
||||
<ClCompile Include="source\Debugger\Debugger_Range.cpp" />
|
||||
<ClCompile Include="source\Debugger\Debugger_Symbols.cpp" />
|
||||
<ClCompile Include="source\Debugger\Util_MemoryTextFile.cpp" />
|
||||
<ClCompile Include="source\Disk.cpp" />
|
||||
<ClCompile Include="source\DiskFormatTrack.cpp" />
|
||||
<ClCompile Include="source\DiskImage.cpp" />
|
||||
<ClCompile Include="source\DiskImageHelper.cpp" />
|
||||
<ClCompile Include="source\Harddisk.cpp" />
|
||||
<ClCompile Include="source\Joystick.cpp" />
|
||||
<ClCompile Include="source\Keyboard.cpp" />
|
||||
<ClCompile Include="source\LanguageCard.cpp" />
|
||||
<ClCompile Include="source\Log.cpp" />
|
||||
<ClCompile Include="source\Memory.cpp" />
|
||||
<ClCompile Include="source\Mockingboard.cpp" />
|
||||
<ClCompile Include="source\MouseInterface.cpp" />
|
||||
<ClCompile Include="source\NoSlotClock.cpp" />
|
||||
<ClCompile Include="source\NTSC.cpp" />
|
||||
<ClCompile Include="source\NTSC_CharSet.cpp" />
|
||||
<ClCompile Include="source\ParallelPrinter.cpp" />
|
||||
<ClCompile Include="source\Pravets.cpp" />
|
||||
<ClCompile Include="source\Registry.cpp" />
|
||||
<ClCompile Include="source\Riff.cpp" />
|
||||
<ClCompile Include="source\SaveState.cpp" />
|
||||
<ClCompile Include="source\SerialComms.cpp" />
|
||||
<ClCompile Include="source\SNESMAX.cpp" />
|
||||
<ClCompile Include="source\SoundCore.cpp" />
|
||||
<ClCompile Include="source\Speaker.cpp" />
|
||||
<ClCompile Include="source\Speech.cpp" />
|
||||
<ClCompile Include="source\SSI263.cpp" />
|
||||
<ClCompile Include="source\StdAfx.cpp">
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug v141_xp|Win32'">Create</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug NoDX|Win32'">Create</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release v141_xp|Win32'">Create</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release NoDX|Win32'">Create</PrecompiledHeader>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\StrFormat.cpp" />
|
||||
<ClCompile Include="source\SynchronousEventManager.cpp" />
|
||||
<ClCompile Include="source\Tape.cpp" />
|
||||
<ClCompile Include="source\Tfe\IPRaw.cpp" />
|
||||
<ClCompile Include="source\Tfe\NetworkBackend.cpp" />
|
||||
<ClCompile Include="source\Tfe\PCapBackend.cpp" />
|
||||
<ClCompile Include="source\Tfe\tfearch.cpp">
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug v141_xp|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug NoDX|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release v141_xp|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release NoDX|Win32'">NotUsing</PrecompiledHeader>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Tfe\tfesupp.cpp">
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug v141_xp|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug NoDX|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release v141_xp|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release NoDX|Win32'">NotUsing</PrecompiledHeader>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Tfe\Uilib.cpp">
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug v141_xp|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug NoDX|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release v141_xp|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release NoDX|Win32'">NotUsing</PrecompiledHeader>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Uthernet1.cpp" />
|
||||
<ClCompile Include="source\Uthernet2.cpp" />
|
||||
<ClCompile Include="source\Utilities.cpp" />
|
||||
<ClCompile Include="source\Video.cpp" />
|
||||
<ClCompile Include="Source\VidHD.cpp" />
|
||||
<ClCompile Include="source\Windows\AppleWin.cpp" />
|
||||
<ClCompile Include="source\Windows\DirectInput.cpp" />
|
||||
<ClCompile Include="source\Windows\HookFilter.cpp" />
|
||||
<ClCompile Include="source\Windows\Win32Frame.cpp" />
|
||||
<ClCompile Include="source\Windows\WinFrame.cpp" />
|
||||
<ClCompile Include="source\YamlHelper.cpp" />
|
||||
<ClCompile Include="source\z80emu.cpp" />
|
||||
<ClCompile Include="source\Z80VICE\daa.cpp">
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug v141_xp|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug NoDX|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release v141_xp|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release NoDX|Win32'">NotUsing</PrecompiledHeader>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Z80VICE\z80.cpp">
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug v141_xp|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug NoDX|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release v141_xp|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release NoDX|Win32'">NotUsing</PrecompiledHeader>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Z80VICE\z80mem.cpp">
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug v141_xp|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug NoDX|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release v141_xp|Win32'">NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release NoDX|Win32'">NotUsing</PrecompiledHeader>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="resource\Apple2.rom" />
|
||||
<None Include="resource\Apple2e.rom" />
|
||||
<None Include="resource\Apple2e_Enhanced.rom" />
|
||||
<None Include="resource\Apple2_JPlus.rom" />
|
||||
<None Include="resource\Apple2_JPlus_Video.rom" />
|
||||
<None Include="resource\Apple2_Plus.rom" />
|
||||
<None Include="resource\Base64A.rom" />
|
||||
<None Include="resource\Base64A_German_Video.rom" />
|
||||
<None Include="resource\Disk2-13sector.rom" />
|
||||
<None Include="resource\DISK2.rom" />
|
||||
<None Include="resource\Freezes_Non-autostart_F8_Rom.rom" />
|
||||
<None Include="resource\Hddrvr.bin" />
|
||||
<None Include="resource\Mockingboard-D.rom" />
|
||||
<None Include="resource\MouseInterface.rom" />
|
||||
<None Include="resource\Parallel.rom" />
|
||||
<None Include="resource\PRAVETS82.ROM" />
|
||||
<None Include="resource\PRAVETS8C.ROM" />
|
||||
<None Include="resource\PRAVETS8M.ROM" />
|
||||
<None Include="resource\SSC.rom" />
|
||||
<None Include="resource\ThunderClockPlus.rom" />
|
||||
<None Include="resource\TK3000e.rom" />
|
||||
<None Include="resource\TKClock.rom" />
|
||||
<None Include="source\CPU\cpu_general.inl" />
|
||||
<None Include="source\CPU\cpu_instructions.inl" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="zip_lib\zip_lib2019.vcxproj">
|
||||
<Project>{509739e7-0af3-4c09-a1a9-f0b1bc31b39d}</Project>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="zlib\zlib-Express2019.vcxproj">
|
||||
<Project>{9b32a6e7-1237-4f36-8903-a3fd51df9c4e}</Project>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="libyaml\win32\yaml2019.vcxproj">
|
||||
<Project>{0212e0df-06da-4080-bd1d-f3b01599f70f}</Project>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Image Include="resource\Applewin.bmp" />
|
||||
<Image Include="resource\APPLEWIN.ICO" />
|
||||
<Image Include="resource\ApplewinLogo.bmp" />
|
||||
<Image Include="resource\CAPSOFF.BMP" />
|
||||
<Image Include="resource\CAPSOFF_P8.BMP" />
|
||||
<Image Include="resource\CAPSON.BMP" />
|
||||
<Image Include="resource\CAPSON_P8.BMP" />
|
||||
<Image Include="resource\CHARSET4.BMP" />
|
||||
<Image Include="resource\CHARSET82.bmp" />
|
||||
<Image Include="resource\CHARSET8C.bmp" />
|
||||
<Image Include="resource\CHARSET8M.bmp" />
|
||||
<Image Include="resource\COLOR.BMP" />
|
||||
<Image Include="resource\DEBUG.BMP" />
|
||||
<Image Include="resource\Debug_Font.bmp" />
|
||||
<Image Include="resource\DISK.ICO" />
|
||||
<Image Include="resource\DISKOFF.BMP" />
|
||||
<Image Include="resource\DISKPROT.BMP" />
|
||||
<Image Include="resource\DISKREAD.BMP" />
|
||||
<Image Include="resource\DISKWRIT.BMP" />
|
||||
<Image Include="resource\DRIVE1.BMP" />
|
||||
<Image Include="resource\DRIVE2.BMP" />
|
||||
<Image Include="resource\DriveSwap.bmp" />
|
||||
<Image Include="resource\FULLSCR.BMP" />
|
||||
<Image Include="resource\HELP.BMP" />
|
||||
<Image Include="resource\LATOFF.BMP" />
|
||||
<Image Include="resource\LATON.BMP" />
|
||||
<Image Include="resource\LED_CAPS_OFF.BMP" />
|
||||
<Image Include="resource\LED_CAPS_OFF_LAT.BMP" />
|
||||
<Image Include="resource\LED_CAPS_OFF_P8.BMP" />
|
||||
<Image Include="resource\LED_CAPS_ON.BMP" />
|
||||
<Image Include="resource\LED_CAPS_ON_LAT.BMP" />
|
||||
<Image Include="resource\LED_CAPS_ON_P8.BMP" />
|
||||
<Image Include="resource\RUN.BMP" />
|
||||
<Image Include="resource\RUN3000E.bmp" />
|
||||
<Image Include="resource\RUNBASE64A.BMP" />
|
||||
<Image Include="resource\RUNP.BMP" />
|
||||
<Image Include="resource\SETUP.BMP" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="resource\Applewin.rc" />
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{0A960136-A00A-4D4B-805F-664D9950D2CA}</ProjectGuid>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
<RootNamespace>AppleWin</RootNamespace>
|
||||
<ProjectName>AppleWin</ProjectName>
|
||||
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug v141_xp|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v141_xp</PlatformToolset>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug NoDX|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release v141_xp|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<PlatformToolset>v141_xp</PlatformToolset>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release NoDX|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug v141_xp|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug NoDX|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release v141_xp|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release NoDX|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug v141_xp|Win32'">
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug NoDX|Win32'">
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release v141_xp|Win32'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release NoDX|Win32'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;NO_DSHOW_STRSAFE;YAML_DECLARE_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<AdditionalIncludeDirectories>source;source\cpu;source\debugger;zlib;zip_lib;libyaml\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<AdditionalOptions>/utf-8 %(AdditionalOptions)</AdditionalOptions>
|
||||
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<AdditionalDependencies>iphlpapi.lib;htmlhelp.lib;comctl32.lib;winmm.lib;dsound.lib;dxguid.lib;version.lib;strmiids.lib;dinput8.lib;user32.lib;gdi32.lib;advapi32.lib;shell32.lib;comdlg32.lib;ole32.lib;wsock32.lib;shlwapi.lib;ddraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalManifestDependencies>"type='Win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'"</AdditionalManifestDependencies>
|
||||
<MinimumRequiredVersion>5.01</MinimumRequiredVersion>
|
||||
</Link>
|
||||
<PreBuildEvent>
|
||||
<Command>.\Debug\TestCPU6502.exe</Command>
|
||||
</PreBuildEvent>
|
||||
<PreBuildEvent>
|
||||
<Message>Performing unit-test: TestCPU6502</Message>
|
||||
</PreBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug v141_xp|Win32'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;NO_DSHOW_STRSAFE;YAML_DECLARE_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<AdditionalIncludeDirectories>source;source\cpu;source\debugger;zlib;zip_lib;libyaml\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<AdditionalOptions>/utf-8 %(AdditionalOptions)</AdditionalOptions>
|
||||
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||
<DisableSpecificWarnings>4995</DisableSpecificWarnings>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<AdditionalDependencies>iphlpapi.lib;htmlhelp.lib;comctl32.lib;winmm.lib;dsound.lib;ddraw_lib\x86\dxguid.lib;version.lib;strmiids.lib;dinput8.lib;user32.lib;gdi32.lib;advapi32.lib;shell32.lib;comdlg32.lib;ole32.lib;wsock32.lib;shlwapi.lib;ddraw_lib\x86\ddraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalManifestDependencies>"type='Win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'"</AdditionalManifestDependencies>
|
||||
<MinimumRequiredVersion>5.01</MinimumRequiredVersion>
|
||||
</Link>
|
||||
<PreBuildEvent>
|
||||
<Command>echo Performing unit-test: TestCPU6502
|
||||
.\Debug\TestCPU6502.exe</Command>
|
||||
</PreBuildEvent>
|
||||
<PreBuildEvent>
|
||||
<Message>Performing unit-test: TestCPU6502</Message>
|
||||
</PreBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug NoDX|Win32'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;NO_DSHOW_STRSAFE;NO_DIRECT_X;YAML_DECLARE_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<AdditionalIncludeDirectories>source;source\cpu;source\debugger;zlib;zip_lib;libyaml\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<AdditionalOptions>/utf-8 %(AdditionalOptions)</AdditionalOptions>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<AdditionalDependencies>iphlpapi.lib;htmlhelp.lib;comctl32.lib;winmm.lib;dsound.lib;dxguid.lib;version.lib;strmiids.lib;dinput8.lib;user32.lib;gdi32.lib;advapi32.lib;shell32.lib;comdlg32.lib;ole32.lib;wsock32.lib;shlwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalManifestDependencies>"type='Win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'"</AdditionalManifestDependencies>
|
||||
<MinimumRequiredVersion>5.01</MinimumRequiredVersion>
|
||||
</Link>
|
||||
<PreBuildEvent>
|
||||
<Command>.\Debug\TestCPU6502.exe</Command>
|
||||
</PreBuildEvent>
|
||||
<PreBuildEvent>
|
||||
<Message>Performing unit-test: TestCPU6502</Message>
|
||||
</PreBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;NO_DSHOW_STRSAFE;YAML_DECLARE_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<AdditionalIncludeDirectories>source;source\cpu;source\debugger;zlib;zip_lib;libyaml\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<AdditionalOptions>/utf-8 %(AdditionalOptions)</AdditionalOptions>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<AdditionalDependencies>iphlpapi.lib;htmlhelp.lib;comctl32.lib;winmm.lib;dsound.lib;dxguid.lib;version.lib;strmiids.lib;dinput8.lib;user32.lib;gdi32.lib;advapi32.lib;shell32.lib;comdlg32.lib;ole32.lib;wsock32.lib;shlwapi.lib;ddraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
|
||||
<AdditionalManifestDependencies>"type='Win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'"</AdditionalManifestDependencies>
|
||||
<MinimumRequiredVersion>5.01</MinimumRequiredVersion>
|
||||
</Link>
|
||||
<PreBuildEvent>
|
||||
<Command>.\Release\TestCPU6502.exe</Command>
|
||||
</PreBuildEvent>
|
||||
<PreBuildEvent>
|
||||
<Message>Performing unit-test: TestCPU6502</Message>
|
||||
</PreBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release v141_xp|Win32'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;NO_DSHOW_STRSAFE;YAML_DECLARE_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<AdditionalIncludeDirectories>source;source\cpu;source\debugger;zlib;zip_lib;libyaml\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<AdditionalOptions>/utf-8 %(AdditionalOptions)</AdditionalOptions>
|
||||
<DisableSpecificWarnings>4995</DisableSpecificWarnings>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<AdditionalDependencies>iphlpapi.lib;htmlhelp.lib;comctl32.lib;winmm.lib;dsound.lib;ddraw_lib\x86\dxguid.lib;version.lib;strmiids.lib;dinput8.lib;user32.lib;gdi32.lib;advapi32.lib;shell32.lib;comdlg32.lib;ole32.lib;wsock32.lib;shlwapi.lib;ddraw_lib\x86\ddraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
|
||||
<AdditionalManifestDependencies>"type='Win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'"</AdditionalManifestDependencies>
|
||||
<MinimumRequiredVersion>5.01</MinimumRequiredVersion>
|
||||
</Link>
|
||||
<PreBuildEvent>
|
||||
<Command>echo Performing unit-test: TestCPU6502
|
||||
.\Release\TestCPU6502.exe</Command>
|
||||
</PreBuildEvent>
|
||||
<PreBuildEvent>
|
||||
<Message>Performing unit-test: TestCPU6502</Message>
|
||||
</PreBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release NoDX|Win32'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;NO_DSHOW_STRSAFE;NO_DIRECT_X;YAML_DECLARE_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<AdditionalIncludeDirectories>source;source\cpu;source\debugger;zlib;zip_lib;libyaml\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<AdditionalOptions>/utf-8 %(AdditionalOptions)</AdditionalOptions>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<AdditionalDependencies>iphlpapi.lib;htmlhelp.lib;comctl32.lib;winmm.lib;dsound.lib;dxguid.lib;version.lib;strmiids.lib;dinput8.lib;user32.lib;gdi32.lib;advapi32.lib;shell32.lib;comdlg32.lib;ole32.lib;wsock32.lib;shlwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
|
||||
<AdditionalManifestDependencies>"type='Win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'"</AdditionalManifestDependencies>
|
||||
<MinimumRequiredVersion>5.01</MinimumRequiredVersion>
|
||||
</Link>
|
||||
<PreBuildEvent>
|
||||
<Command>.\Release\TestCPU6502.exe</Command>
|
||||
</PreBuildEvent>
|
||||
<PreBuildEvent>
|
||||
<Message>Performing unit-test: TestCPU6502</Message>
|
||||
</PreBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
|
@ -1,864 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<ClCompile Include="source\6821.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Configuration\About.cpp">
|
||||
<Filter>Source Files\Configuration</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\AY8910.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\CPU.cpp">
|
||||
<Filter>Source Files\CPU</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Z80VICE\daa.cpp">
|
||||
<Filter>Source Files\Z80VICE</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Debugger\Debug.cpp">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Debugger\Debugger_Assembler.cpp">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Debugger\Debugger_Color.cpp">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Debugger\Debugger_Commands.cpp">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Debugger\Debugger_Console.cpp">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Debugger\Debugger_DisassemblerData.cpp">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Debugger\Debugger_Display.cpp">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Debugger\Debugger_Help.cpp">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Debugger\Debugger_Parser.cpp">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Debugger\Debugger_Range.cpp">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Debugger\Debugger_Symbols.cpp">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Disk.cpp">
|
||||
<Filter>Source Files\Disk</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\DiskFormatTrack.cpp">
|
||||
<Filter>Source Files\Disk</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\DiskImage.cpp">
|
||||
<Filter>Source Files\Disk</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\DiskImageHelper.cpp">
|
||||
<Filter>Source Files\Disk</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Harddisk.cpp">
|
||||
<Filter>Source Files\Disk</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Joystick.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Keyboard.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\LanguageCard.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Log.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Memory.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Mockingboard.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\MouseInterface.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\NoSlotClock.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Configuration\PageAdvanced.cpp">
|
||||
<Filter>Source Files\Configuration</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Configuration\PageConfig.cpp">
|
||||
<Filter>Source Files\Configuration</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Configuration\PageConfigTfe.cpp">
|
||||
<Filter>Source Files\Configuration</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Configuration\PageDisk.cpp">
|
||||
<Filter>Source Files\Configuration</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Configuration\PageInput.cpp">
|
||||
<Filter>Source Files\Configuration</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Configuration\PageSound.cpp">
|
||||
<Filter>Source Files\Configuration</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\ParallelPrinter.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Configuration\PropertySheet.cpp">
|
||||
<Filter>Source Files\Configuration</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Configuration\PropertySheetHelper.cpp">
|
||||
<Filter>Source Files\Configuration</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Registry.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Riff.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\SaveState.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\SerialComms.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\SoundCore.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Speaker.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Speech.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\StdAfx.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Tape.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Tfe\tfearch.cpp">
|
||||
<Filter>Source Files\Uthernet</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Tfe\tfesupp.cpp">
|
||||
<Filter>Source Files\Uthernet</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Tfe\Uilib.cpp">
|
||||
<Filter>Source Files\Uthernet</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Video.cpp">
|
||||
<Filter>Source Files\Video</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Z80VICE\z80.cpp">
|
||||
<Filter>Source Files\Z80VICE</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Z80VICE\z80mem.cpp">
|
||||
<Filter>Source Files\Z80VICE</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\z80emu.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Debugger\Util_MemoryTextFile.cpp">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\NTSC.cpp">
|
||||
<Filter>Source Files\Video</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\NTSC_CharSet.cpp">
|
||||
<Filter>Source Files\Video</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Pravets.cpp">
|
||||
<Filter>Source Files\Model</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\SAM.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\YamlHelper.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\RGBMonitor.cpp">
|
||||
<Filter>Source Files\Video</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\CardManager.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Disk2CardManager.cpp">
|
||||
<Filter>Source Files\Disk</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\SynchronousEventManager.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Windows\DirectInput.cpp">
|
||||
<Filter>Source Files\Windows</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Windows\WinFrame.cpp">
|
||||
<Filter>Source Files\Windows</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Core.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Utilities.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Windows\AppleWin.cpp">
|
||||
<Filter>Source Files\Windows</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\CmdLine.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\FrameBase.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Windows\Win32Frame.cpp">
|
||||
<Filter>Source Files\Windows</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\SSI263.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Debugger\Debugger_Disassembler.cpp">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Debugger\Debugger_Win32.cpp">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Windows\HookFilter.cpp">
|
||||
<Filter>Source Files\Windows</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\FourPlay.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\SNESMAX.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Card.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="Source\VidHD.cpp">
|
||||
<Filter>Source Files\Video</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\6522.cpp">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\StrFormat.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Uthernet1.cpp">
|
||||
<Filter>Source Files\Uthernet</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Tfe\NetworkBackend.cpp">
|
||||
<Filter>Source Files\Uthernet</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Tfe\PCapBackend.cpp">
|
||||
<Filter>Source Files\Uthernet</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Uthernet2.cpp">
|
||||
<Filter>Source Files\Uthernet</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Tfe\IPRaw.cpp">
|
||||
<Filter>Source Files\Uthernet</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="source\CommonVICE\6510core.h">
|
||||
<Filter>Source Files\CommonVICE</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\6821.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Configuration\About.h">
|
||||
<Filter>Source Files\Configuration</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\AY8910.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Tfe\Bpf.h">
|
||||
<Filter>Source Files\Uthernet</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Common.h">
|
||||
<Filter>Source Files\_Headers</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Configuration\Config.h">
|
||||
<Filter>Source Files\Configuration</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\CPU.h">
|
||||
<Filter>Source Files\CPU</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\CPU\cpu6502.h">
|
||||
<Filter>Source Files\CPU</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\CPU\cpu65C02.h">
|
||||
<Filter>Source Files\CPU</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Z80VICE\daa.h">
|
||||
<Filter>Source Files\Z80VICE</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Debugger\Debugger_Types.h">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Debugger\Debug.h">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Debugger\Debugger_Assembler.h">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Debugger\Debugger_Color.h">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Debugger\Debugger_Console.h">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Debugger\Debugger_DisassemblerData.h">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Debugger\Debugger_Display.h">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Debugger\Debugger_Help.h">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Debugger\Debugger_Parser.h">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Debugger\Debugger_Range.h">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Debugger\Debugger_Symbols.h">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Disk.h">
|
||||
<Filter>Source Files\Disk</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\DiskFormatTrack.h">
|
||||
<Filter>Source Files\Disk</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\DiskImage.h">
|
||||
<Filter>Source Files\Disk</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\DiskImageHelper.h">
|
||||
<Filter>Source Files\Disk</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\DiskLog.h">
|
||||
<Filter>Source Files\Disk</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Harddisk.h">
|
||||
<Filter>Source Files\Disk</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\CommonVICE\interrupt.h">
|
||||
<Filter>Source Files\CommonVICE</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\CommonVICE\mem.h">
|
||||
<Filter>Source Files\CommonVICE</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\CommonVICE\types.h">
|
||||
<Filter>Source Files\CommonVICE</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Tfe\Ip6_misc.h">
|
||||
<Filter>Source Files\Uthernet</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Configuration\IPropertySheet.h">
|
||||
<Filter>Source Files\Configuration</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Configuration\IPropertySheetPage.h">
|
||||
<Filter>Source Files\Configuration</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Joystick.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Keyboard.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\LanguageCard.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Log.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Memory.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Mockingboard.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\MouseInterface.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\NoSlotClock.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Configuration\PageAdvanced.h">
|
||||
<Filter>Source Files\Configuration</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Configuration\PageConfig.h">
|
||||
<Filter>Source Files\Configuration</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Configuration\PageConfigTfe.h">
|
||||
<Filter>Source Files\Configuration</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Configuration\PageDisk.h">
|
||||
<Filter>Source Files\Configuration</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Configuration\PageInput.h">
|
||||
<Filter>Source Files\Configuration</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Configuration\PageSound.h">
|
||||
<Filter>Source Files\Configuration</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\ParallelPrinter.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Tfe\Pcap.h">
|
||||
<Filter>Source Files\Uthernet</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Configuration\PropertySheet.h">
|
||||
<Filter>Source Files\Configuration</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Configuration\PropertySheetDefs.h">
|
||||
<Filter>Source Files\Configuration</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Configuration\PropertySheetHelper.h">
|
||||
<Filter>Source Files\Configuration</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Registry.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="resource\resource.h">
|
||||
<Filter>Source Files\_Headers</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Riff.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\SaveState.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\SerialComms.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\SoundCore.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Speaker.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Speech.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\SSI263Phonemes.h">
|
||||
<Filter>Source Files\_Headers</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\StdAfx.h">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Tape.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Tfe\tfearch.h">
|
||||
<Filter>Source Files\Uthernet</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Tfe\tfesupp.h">
|
||||
<Filter>Source Files\Uthernet</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Tfe\Uilib.h">
|
||||
<Filter>Source Files\Uthernet</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Video.h">
|
||||
<Filter>Source Files\Video</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="resource\winres.h">
|
||||
<Filter>Resource Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Z80VICE\z80.h">
|
||||
<Filter>Source Files\Z80VICE</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Z80VICE\z80mem.h">
|
||||
<Filter>Source Files\Z80VICE</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Z80VICE\z80regs.h">
|
||||
<Filter>Source Files\Z80VICE</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\z80emu.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Debugger\DebugDefs.h">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Debugger\Util_MemoryTextFile.h">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Debugger\Util_Text.h">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\DiskDefs.h">
|
||||
<Filter>Source Files\Disk</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\NTSC.h">
|
||||
<Filter>Source Files\Video</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\NTSC_CharSet.h">
|
||||
<Filter>Source Files\Video</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Pravets.h">
|
||||
<Filter>Source Files\Model</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\SAM.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\YamlHelper.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\SaveState_Structs_common.h">
|
||||
<Filter>Source Files\_Headers</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\SaveState_Structs_v1.h">
|
||||
<Filter>Source Files\_Headers</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\RGBMonitor.h">
|
||||
<Filter>Source Files\Video</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\CardManager.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Disk2CardManager.h">
|
||||
<Filter>Source Files\Disk</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Card.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\SynchronousEventManager.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Windows\DirectInput.h">
|
||||
<Filter>Source Files\Windows</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Core.h">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Utilities.h">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Windows\AppleWin.h">
|
||||
<Filter>Source Files\Windows</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\CmdLine.h">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Interface.h">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\FrameBase.h">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Windows\Win32Frame.h">
|
||||
<Filter>Source Files\Windows</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\SSI263.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Debugger\Debugger_Disassembler.h">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Debugger\Debugger_Win32.h">
|
||||
<Filter>Source Files\Debugger</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Windows\HookFilter.h">
|
||||
<Filter>Source Files\Windows</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\FourPlay.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\SNESMAX.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="Source\VidHD.h">
|
||||
<Filter>Source Files\Video</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\6522.h">
|
||||
<Filter>Source Files\Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\StrFormat.h">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Uthernet1.h">
|
||||
<Filter>Source Files\Uthernet</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Tfe\NetworkBackend.h">
|
||||
<Filter>Source Files\Uthernet</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Tfe\PCapBackend.h">
|
||||
<Filter>Source Files\Uthernet</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\W5100.h">
|
||||
<Filter>Source Files\Uthernet</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Uthernet2.h">
|
||||
<Filter>Source Files\Uthernet</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Tfe\IPRaw.h">
|
||||
<Filter>Source Files\Uthernet</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Image Include="resource\Applewin.bmp">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\APPLEWIN.ICO">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\CAPSOFF.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\CAPSOFF_P8.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\CAPSON.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\CAPSON_P8.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\CHARSET4.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\CHARSET8C.bmp">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\CHARSET8M.bmp">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\CHARSET82.bmp">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\COLOR.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\DEBUG.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\Debug_Font.bmp">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\DISK.ICO">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\FULLSCR.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\HELP.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\LATOFF.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\LATON.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\LED_CAPS_OFF.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\LED_CAPS_OFF_LAT.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\LED_CAPS_OFF_P8.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\LED_CAPS_ON.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\LED_CAPS_ON_LAT.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\LED_CAPS_ON_P8.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\DISKOFF.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\DISKPROT.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\DISKREAD.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\DISKWRIT.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\DRIVE1.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\DRIVE2.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\DriveSwap.bmp">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\RUN.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\RUNP.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\SETUP.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\RUN3000E.bmp">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\RUNBASE64A.BMP">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="resource\ApplewinLogo.bmp">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="resource\Apple2.rom">
|
||||
<Filter>Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="resource\Apple2_Plus.rom">
|
||||
<Filter>Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="resource\Apple2e.rom">
|
||||
<Filter>Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="resource\Apple2e_Enhanced.rom">
|
||||
<Filter>Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="source\CPU\cpu_general.inl">
|
||||
<Filter>Source Files\CPU</Filter>
|
||||
</None>
|
||||
<None Include="source\CPU\cpu_instructions.inl">
|
||||
<Filter>Source Files\CPU</Filter>
|
||||
</None>
|
||||
<None Include="resource\DISK2.rom">
|
||||
<Filter>Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="resource\Freezes_Non-autostart_F8_Rom.rom">
|
||||
<Filter>Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="resource\Hddrvr.bin">
|
||||
<Filter>Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="resource\Mockingboard-D.rom">
|
||||
<Filter>Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="resource\MouseInterface.rom">
|
||||
<Filter>Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="resource\Parallel.rom">
|
||||
<Filter>Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="resource\PRAVETS8C.ROM">
|
||||
<Filter>Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="resource\PRAVETS8M.ROM">
|
||||
<Filter>Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="resource\PRAVETS82.ROM">
|
||||
<Filter>Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="resource\SSC.rom">
|
||||
<Filter>Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="resource\ThunderClockPlus.rom">
|
||||
<Filter>Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="resource\TK3000e.rom">
|
||||
<Filter>Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="resource\TKClock.rom">
|
||||
<Filter>Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="resource\Base64A.rom">
|
||||
<Filter>Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="resource\Base64A_German_Video.rom">
|
||||
<Filter>Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="resource\Apple2_JPlus.rom">
|
||||
<Filter>Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="resource\Apple2_JPlus_Video.rom">
|
||||
<Filter>Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="resource\Disk2-13sector.rom">
|
||||
<Filter>Resource Files</Filter>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Text Include="docs\CodingConventions.txt">
|
||||
<Filter>Docs</Filter>
|
||||
</Text>
|
||||
<Text Include="docs\Debugger_Changelog.txt">
|
||||
<Filter>Docs</Filter>
|
||||
</Text>
|
||||
<Text Include="docs\FAQ.txt">
|
||||
<Filter>Docs</Filter>
|
||||
</Text>
|
||||
<Text Include="docs\ToDo.txt">
|
||||
<Filter>Docs</Filter>
|
||||
</Text>
|
||||
<Text Include="docs\Video_Cleanup.txt">
|
||||
<Filter>Docs</Filter>
|
||||
</Text>
|
||||
<Text Include="docs\Wishlist.txt">
|
||||
<Filter>Docs</Filter>
|
||||
</Text>
|
||||
<Text Include="bin\History.txt" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Filter Include="Docs">
|
||||
<UniqueIdentifier>{88e8853b-7cec-4a16-9dd9-5a2b96bf3c8b}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{c8f186d6-7988-4d45-87c5-d9ea62c75953}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Source Files\_Headers">
|
||||
<UniqueIdentifier>{fa2685fb-1686-4525-9ac1-bcca3310c473}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Source Files\CommonVICE">
|
||||
<UniqueIdentifier>{8578fca7-e2e4-488a-995e-bc1fd1c4286e}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Source Files\Configuration">
|
||||
<UniqueIdentifier>{dd629946-2094-409f-83a7-791ceff4bec2}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Source Files\CPU">
|
||||
<UniqueIdentifier>{30a9b810-6ebd-4505-a45d-6ed212c3ba5a}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Source Files\Debugger">
|
||||
<UniqueIdentifier>{66471c82-8e9b-4c65-9514-600cfbd2d4c1}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Source Files\Disk">
|
||||
<UniqueIdentifier>{6a0a220b-e39c-486c-9f04-828b4ba6ace2}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Source Files\Emulator">
|
||||
<UniqueIdentifier>{6b2abcf9-39f7-4b19-ab2a-bab66c3ed4bd}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Source Files\Z80VICE">
|
||||
<UniqueIdentifier>{ea6eab89-9568-4f06-99e7-5d1fe99a8578}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Source Files\Uthernet">
|
||||
<UniqueIdentifier>{8ea2437f-ac40-4ef6-9b68-7f5244480457}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Source Files\Video">
|
||||
<UniqueIdentifier>{f535a998-5bc0-43a6-a96e-65918c92b8fc}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Resource Files">
|
||||
<UniqueIdentifier>{b5c6889e-727d-4339-96c8-e4284e1d6e0f}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Source Files\Model">
|
||||
<UniqueIdentifier>{15b450e4-f89f-4d80-9c44-48b32f33f3e3}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Source Files\Windows">
|
||||
<UniqueIdentifier>{95d0abc3-4007-4eb0-8222-4579b565de23}</UniqueIdentifier>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="resource\Applewin.rc">
|
||||
<Filter>Resource Files</Filter>
|
||||
</ResourceCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
10
CIBuild.bat
10
CIBuild.bat
|
@ -1,10 +0,0 @@
|
|||
rem Commands to build AppleWin on travis
|
||||
|
||||
setlocal
|
||||
|
||||
choco install visualstudio2019community
|
||||
choco install visualstudio2019-workload-nativedesktop
|
||||
|
||||
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\Tools\VsMSBuildCmd.bat"
|
||||
|
||||
MSBuild.exe /p:Configuration=Release AppleWinExpress2019.sln
|
|
@ -1,94 +0,0 @@
|
|||
cmake_minimum_required(VERSION 3.13)
|
||||
|
||||
project(applewin HOMEPAGE_URL "https://github.com/audetto/AppleWin")
|
||||
|
||||
option(BUILD_APPLEN "build ncurses frontend")
|
||||
option(BUILD_QAPPLE "build Qt5 frontend")
|
||||
option(BUILD_SA2 "build SDL2 frontend")
|
||||
option(BUILD_LIBRETRO "build libretro core")
|
||||
|
||||
if (NOT (BUILD_APPLEN OR BUILD_QAPPLE OR BUILD_SA2 OR BUILD_LIBRETRO))
|
||||
message(NOTICE "Building everything by default")
|
||||
set(BUILD_APPLEN ON)
|
||||
set(BUILD_QAPPLE ON)
|
||||
set(BUILD_SA2 ON)
|
||||
set(BUILD_LIBRETRO ON)
|
||||
endif()
|
||||
|
||||
set(CMAKE_CXX_STANDARD 14)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
add_compile_options(-Werror=return-type)
|
||||
|
||||
if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
|
||||
add_compile_options(-Werror=format -Wno-error=format-overflow -Wno-error=format-truncation -Wno-psabi)
|
||||
endif()
|
||||
|
||||
MESSAGE("CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}")
|
||||
MESSAGE("CMAKE_CXX_FLAGS: ${CMAKE_CXX_FLAGS}")
|
||||
MESSAGE("CMAKE_CXX_FLAGS_RELEASE: ${CMAKE_CXX_FLAGS_RELEASE}")
|
||||
MESSAGE("CMAKE_CXX_FLAGS_DEBUG: ${CMAKE_CXX_FLAGS_DEBUG}")
|
||||
MESSAGE("CMAKE_CXX_FLAGS_RELWITHDEBINFO: ${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
|
||||
|
||||
# this only affects common2, the others are already build with fPIC by default
|
||||
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
|
||||
|
||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
||||
|
||||
execute_process(COMMAND uname -n
|
||||
OUTPUT_VARIABLE UNAME
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
|
||||
if(${UNAME} STREQUAL raspberrypi)
|
||||
# it is too slow and might cause out of memory issues
|
||||
# more forensic is required
|
||||
MESSAGE(NOTICE "Raspberry Pi detected: IPO disabled")
|
||||
else()
|
||||
include(CheckIPOSupported)
|
||||
check_ipo_supported()
|
||||
set(CMAKE_INTERPROCEDURAL_OPTIMIZATION FALSE)
|
||||
endif()
|
||||
|
||||
include_directories(source)
|
||||
|
||||
add_subdirectory(source)
|
||||
add_subdirectory(source/linux/libwindows)
|
||||
add_subdirectory(test/TestCPU6502)
|
||||
|
||||
if (BUILD_LIBRETRO OR BUILD_APPLEN OR BUILD_SA2)
|
||||
add_subdirectory(source/frontends/common2)
|
||||
endif()
|
||||
|
||||
if (BUILD_APPLEN)
|
||||
add_subdirectory(source/frontends/ncurses)
|
||||
endif()
|
||||
|
||||
if (BUILD_QAPPLE)
|
||||
add_subdirectory(source/frontends/qt)
|
||||
endif()
|
||||
|
||||
if (BUILD_SA2)
|
||||
add_subdirectory(source/frontends/sdl)
|
||||
endif()
|
||||
|
||||
if (BUILD_LIBRETRO)
|
||||
add_subdirectory(source/frontends/libretro)
|
||||
endif()
|
||||
|
||||
file(STRINGS resource/version.h VERSION_FILE LIMIT_COUNT 1)
|
||||
string(REGEX MATCH "#define APPLEWIN_VERSION (.*)" _ ${VERSION_FILE})
|
||||
string(REPLACE "," "." VERSION ${CMAKE_MATCH_1})
|
||||
|
||||
set(CPACK_PACKAGE_VERSION ${VERSION})
|
||||
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Apple ][ emulator for Linux")
|
||||
set(CPACK_PACKAGE_CONTACT "audetto <mariofutire@gmail.com>")
|
||||
|
||||
set(CPACK_DEBIAN_FILE_NAME DEB-DEFAULT)
|
||||
set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS "ON")
|
||||
set(CPACK_DEBIAN_PACKAGE_GENERATE_SHLIBS "ON")
|
||||
|
||||
set(CPACK_RPM_PACKAGE_LICENSE "GPLv2")
|
||||
set(CPACK_RPM_PACKAGE_GROUP "Applications/Emulators")
|
||||
# RPM dependencies are automatic
|
||||
|
||||
include(CPack)
|
|
@ -1,43 +0,0 @@
|
|||
# Contributing to AppleWin
|
||||
|
||||
First of all, thanks for taking the time to contribute!
|
||||
|
||||
## How can I contribute?
|
||||
|
||||
### Reporting bugs
|
||||
|
||||
Before submitting a bug, search the existing issues to see if this bug has already been raised. If it has, then add a comment to this existing issue with your extra details.
|
||||
|
||||
If raising a new bug issue, then include the following details:
|
||||
- AppleWin version
|
||||
- OS version (eg. Windows 7-64, Windows 10 1909)
|
||||
- A complete set of steps to reproduce the issue
|
||||
|
||||
Optionally:
|
||||
- AppleWin log file (created using `applewin.exe -log`)
|
||||
- Save-state file (.aws.yaml file) and any associated floppy or harddisk image files
|
||||
- Screenshots
|
||||
|
||||
### Suggesting enhancements
|
||||
|
||||
Before submitting an enhancement, search the existing issues to see if this enhancement has already been raised. If it has, then add a comment to this existing issue with your extra details.
|
||||
|
||||
### Pull Requests
|
||||
|
||||
The process described here has several goals:
|
||||
- Maintain AppleWin's quality
|
||||
- Enforce a workable solution for AppleWin maintainers to review contributions
|
||||
|
||||
Please review the simple [Coding Conventions](https://github.com/AppleWin/AppleWin/blob/master/docs/CodingConventions.txt).
|
||||
|
||||
Smaller PRs are highly desirable, as they should be simpler to review and approve. Large changes are likely to be rejected or not get looked at (resulting in them going stale, and ultimately diverging further from the mainline repo).
|
||||
|
||||
For large changes being submitted for review, then it's HIGHLY recommended to split the large PR into smaller PRs, and submit them piece by piece. This means that no dependencies can exist between each smaller PR.
|
||||
|
||||
For a PR, don't make changes that are unrelated to the PR. These can be done in separate PRs.
|
||||
|
||||
Follow the coding style in the source file(s) that are being changed. Since this is a mature codebase, then bear in mind that different coding styles can exist in different source files.
|
||||
|
||||
For new (large) features, then link the PR back to an enhancement issue, where the proposed feature had been discussed with AppleWin maintainers first and justified using suitable use-cases. In this enhancement issue be sure to include a specification of the feature, and a design if necessary. Having a design (doc, diagrams) that explains the logic/algorithms/protocol etc will help in the long term maintenance of this feature.
|
||||
|
||||
When changing project metadata files (eg. .sln, .vcproj, .rc) then different versions of Visual Studio may decide to reorder or re-format other sections of the file. This can result in lots of churn in the file each time a trivial edit is made. So before committing the PR, check the difference, and if there's been lots of unnecessary changes then just make the required change using a non-Visual Studio editor.
|
|
@ -1,340 +0,0 @@
|
|||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 2, June 1991
|
||||
|
||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||
51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
License is intended to guarantee your freedom to share and change free
|
||||
software--to make sure the software is free for all its users. This
|
||||
General Public License applies to most of the Free Software
|
||||
Foundation's software and to any other program whose authors commit to
|
||||
using it. (Some other Free Software Foundation software is covered by
|
||||
the GNU Library General Public License instead.) You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
this service if you wish), that you receive source code or can get it
|
||||
if you want it, that you can change the software or use pieces of it
|
||||
in new free programs; and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
anyone to deny you these rights or to ask you to surrender the rights.
|
||||
These restrictions translate to certain responsibilities for you if you
|
||||
distribute copies of the software, or if you modify it.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must give the recipients all the rights that
|
||||
you have. You must make sure that they, too, receive or can get the
|
||||
source code. And you must show them these terms so they know their
|
||||
rights.
|
||||
|
||||
We protect your rights with two steps: (1) copyright the software, and
|
||||
(2) offer you this license which gives you legal permission to copy,
|
||||
distribute and/or modify the software.
|
||||
|
||||
Also, for each author's protection and ours, we want to make certain
|
||||
that everyone understands that there is no warranty for this free
|
||||
software. If the software is modified by someone else and passed on, we
|
||||
want its recipients to know that what they have is not the original, so
|
||||
that any problems introduced by others will not reflect on the original
|
||||
authors' reputations.
|
||||
|
||||
Finally, any free program is threatened constantly by software
|
||||
patents. We wish to avoid the danger that redistributors of a free
|
||||
program will individually obtain patent licenses, in effect making the
|
||||
program proprietary. To prevent this, we have made it clear that any
|
||||
patent must be licensed for everyone's free use or not licensed at all.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License applies to any program or other work which contains
|
||||
a notice placed by the copyright holder saying it may be distributed
|
||||
under the terms of this General Public License. The "Program", below,
|
||||
refers to any such program or work, and a "work based on the Program"
|
||||
means either the Program or any derivative work under copyright law:
|
||||
that is to say, a work containing the Program or a portion of it,
|
||||
either verbatim or with modifications and/or translated into another
|
||||
language. (Hereinafter, translation is included without limitation in
|
||||
the term "modification".) Each licensee is addressed as "you".
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running the Program is not restricted, and the output from the Program
|
||||
is covered only if its contents constitute a work based on the
|
||||
Program (independent of having been made by running the Program).
|
||||
Whether that is true depends on what the Program does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Program's
|
||||
source code as you receive it, in any medium, provided that you
|
||||
conspicuously and appropriately publish on each copy an appropriate
|
||||
copyright notice and disclaimer of warranty; keep intact all the
|
||||
notices that refer to this License and to the absence of any warranty;
|
||||
and give any other recipients of the Program a copy of this License
|
||||
along with the Program.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy, and
|
||||
you may at your option offer warranty protection in exchange for a fee.
|
||||
|
||||
2. You may modify your copy or copies of the Program or any portion
|
||||
of it, thus forming a work based on the Program, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
a) You must cause the modified files to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
|
||||
b) You must cause any work that you distribute or publish, that in
|
||||
whole or in part contains or is derived from the Program or any
|
||||
part thereof, to be licensed as a whole at no charge to all third
|
||||
parties under the terms of this License.
|
||||
|
||||
c) If the modified program normally reads commands interactively
|
||||
when run, you must cause it, when started running for such
|
||||
interactive use in the most ordinary way, to print or display an
|
||||
announcement including an appropriate copyright notice and a
|
||||
notice that there is no warranty (or else, saying that you provide
|
||||
a warranty) and that users may redistribute the program under
|
||||
these conditions, and telling the user how to view a copy of this
|
||||
License. (Exception: if the Program itself is interactive but
|
||||
does not normally print such an announcement, your work based on
|
||||
the Program is not required to print an announcement.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Program,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Program, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Program.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Program
|
||||
with the Program (or with a work based on the Program) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
3. You may copy and distribute the Program (or a work based on it,
|
||||
under Section 2) in object code or executable form under the terms of
|
||||
Sections 1 and 2 above provided that you also do one of the following:
|
||||
|
||||
a) Accompany it with the complete corresponding machine-readable
|
||||
source code, which must be distributed under the terms of Sections
|
||||
1 and 2 above on a medium customarily used for software interchange; or,
|
||||
|
||||
b) Accompany it with a written offer, valid for at least three
|
||||
years, to give any third party, for a charge no more than your
|
||||
cost of physically performing source distribution, a complete
|
||||
machine-readable copy of the corresponding source code, to be
|
||||
distributed under the terms of Sections 1 and 2 above on a medium
|
||||
customarily used for software interchange; or,
|
||||
|
||||
c) Accompany it with the information you received as to the offer
|
||||
to distribute corresponding source code. (This alternative is
|
||||
allowed only for noncommercial distribution and only if you
|
||||
received the program in object code or executable form with such
|
||||
an offer, in accord with Subsection b above.)
|
||||
|
||||
The source code for a work means the preferred form of the work for
|
||||
making modifications to it. For an executable work, complete source
|
||||
code means all the source code for all modules it contains, plus any
|
||||
associated interface definition files, plus the scripts used to
|
||||
control compilation and installation of the executable. However, as a
|
||||
special exception, the source code distributed need not include
|
||||
anything that is normally distributed (in either source or binary
|
||||
form) with the major components (compiler, kernel, and so on) of the
|
||||
operating system on which the executable runs, unless that component
|
||||
itself accompanies the executable.
|
||||
|
||||
If distribution of executable or object code is made by offering
|
||||
access to copy from a designated place, then offering equivalent
|
||||
access to copy the source code from the same place counts as
|
||||
distribution of the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
4. You may not copy, modify, sublicense, or distribute the Program
|
||||
except as expressly provided under this License. Any attempt
|
||||
otherwise to copy, modify, sublicense or distribute the Program is
|
||||
void, and will automatically terminate your rights under this License.
|
||||
However, parties who have received copies, or rights, from you under
|
||||
this License will not have their licenses terminated so long as such
|
||||
parties remain in full compliance.
|
||||
|
||||
5. You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Program or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Program (or any work based on the
|
||||
Program), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Program or works based on it.
|
||||
|
||||
6. Each time you redistribute the Program (or any work based on the
|
||||
Program), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute or modify the Program subject to
|
||||
these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties to
|
||||
this License.
|
||||
|
||||
7. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Program at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Program by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Program.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under
|
||||
any particular circumstance, the balance of the section is intended to
|
||||
apply and the section as a whole is intended to apply in other
|
||||
circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system, which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
8. If the distribution and/or use of the Program is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Program under this License
|
||||
may add an explicit geographical distribution limitation excluding
|
||||
those countries, so that distribution is permitted only in or among
|
||||
countries not thus excluded. In such case, this License incorporates
|
||||
the limitation as if written in the body of this License.
|
||||
|
||||
9. The Free Software Foundation may publish revised and/or new versions
|
||||
of the General Public License from time to time. Such new versions will
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Program
|
||||
specifies a version number of this License which applies to it and "any
|
||||
later version", you have the option of following the terms and conditions
|
||||
either of that version or of any later version published by the Free
|
||||
Software Foundation. If the Program does not specify a version number of
|
||||
this License, you may choose any version ever published by the Free Software
|
||||
Foundation.
|
||||
|
||||
10. If you wish to incorporate parts of the Program into other free
|
||||
programs whose distribution conditions are different, write to the author
|
||||
to ask for permission. For software which is copyrighted by the Free
|
||||
Software Foundation, write to the Free Software Foundation; we sometimes
|
||||
make exceptions for this. Our decision will be guided by the two goals
|
||||
of preserving the free status of all derivatives of our free software and
|
||||
of promoting the sharing and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
|
||||
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
||||
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
||||
REPAIR OR CORRECTION.
|
||||
|
||||
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
||||
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program is interactive, make it output a short notice like this
|
||||
when it starts in an interactive mode:
|
||||
|
||||
Gnomovision version 69, Copyright (C) year name of author
|
||||
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||
parts of the General Public License. Of course, the commands you use may
|
||||
be called something other than `show w' and `show c'; they could even be
|
||||
mouse-clicks or menu items--whatever suits your program.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the program, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
||||
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1989
|
||||
Ty Coon, President of Vice
|
||||
|
||||
This General Public License does not permit incorporating your program into
|
||||
proprietary programs. If your program is a subroutine library, you may
|
||||
consider it more useful to permit linking proprietary applications with the
|
||||
library. If this is what you want to do, use the GNU Library General
|
||||
Public License instead of this License.
|
339
LICENSE
339
LICENSE
|
@ -1,339 +0,0 @@
|
|||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 2, June 1991
|
||||
|
||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc., <http://fsf.org/>
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
License is intended to guarantee your freedom to share and change free
|
||||
software--to make sure the software is free for all its users. This
|
||||
General Public License applies to most of the Free Software
|
||||
Foundation's software and to any other program whose authors commit to
|
||||
using it. (Some other Free Software Foundation software is covered by
|
||||
the GNU Lesser General Public License instead.) You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
this service if you wish), that you receive source code or can get it
|
||||
if you want it, that you can change the software or use pieces of it
|
||||
in new free programs; and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
anyone to deny you these rights or to ask you to surrender the rights.
|
||||
These restrictions translate to certain responsibilities for you if you
|
||||
distribute copies of the software, or if you modify it.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must give the recipients all the rights that
|
||||
you have. You must make sure that they, too, receive or can get the
|
||||
source code. And you must show them these terms so they know their
|
||||
rights.
|
||||
|
||||
We protect your rights with two steps: (1) copyright the software, and
|
||||
(2) offer you this license which gives you legal permission to copy,
|
||||
distribute and/or modify the software.
|
||||
|
||||
Also, for each author's protection and ours, we want to make certain
|
||||
that everyone understands that there is no warranty for this free
|
||||
software. If the software is modified by someone else and passed on, we
|
||||
want its recipients to know that what they have is not the original, so
|
||||
that any problems introduced by others will not reflect on the original
|
||||
authors' reputations.
|
||||
|
||||
Finally, any free program is threatened constantly by software
|
||||
patents. We wish to avoid the danger that redistributors of a free
|
||||
program will individually obtain patent licenses, in effect making the
|
||||
program proprietary. To prevent this, we have made it clear that any
|
||||
patent must be licensed for everyone's free use or not licensed at all.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License applies to any program or other work which contains
|
||||
a notice placed by the copyright holder saying it may be distributed
|
||||
under the terms of this General Public License. The "Program", below,
|
||||
refers to any such program or work, and a "work based on the Program"
|
||||
means either the Program or any derivative work under copyright law:
|
||||
that is to say, a work containing the Program or a portion of it,
|
||||
either verbatim or with modifications and/or translated into another
|
||||
language. (Hereinafter, translation is included without limitation in
|
||||
the term "modification".) Each licensee is addressed as "you".
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running the Program is not restricted, and the output from the Program
|
||||
is covered only if its contents constitute a work based on the
|
||||
Program (independent of having been made by running the Program).
|
||||
Whether that is true depends on what the Program does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Program's
|
||||
source code as you receive it, in any medium, provided that you
|
||||
conspicuously and appropriately publish on each copy an appropriate
|
||||
copyright notice and disclaimer of warranty; keep intact all the
|
||||
notices that refer to this License and to the absence of any warranty;
|
||||
and give any other recipients of the Program a copy of this License
|
||||
along with the Program.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy, and
|
||||
you may at your option offer warranty protection in exchange for a fee.
|
||||
|
||||
2. You may modify your copy or copies of the Program or any portion
|
||||
of it, thus forming a work based on the Program, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
a) You must cause the modified files to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
|
||||
b) You must cause any work that you distribute or publish, that in
|
||||
whole or in part contains or is derived from the Program or any
|
||||
part thereof, to be licensed as a whole at no charge to all third
|
||||
parties under the terms of this License.
|
||||
|
||||
c) If the modified program normally reads commands interactively
|
||||
when run, you must cause it, when started running for such
|
||||
interactive use in the most ordinary way, to print or display an
|
||||
announcement including an appropriate copyright notice and a
|
||||
notice that there is no warranty (or else, saying that you provide
|
||||
a warranty) and that users may redistribute the program under
|
||||
these conditions, and telling the user how to view a copy of this
|
||||
License. (Exception: if the Program itself is interactive but
|
||||
does not normally print such an announcement, your work based on
|
||||
the Program is not required to print an announcement.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Program,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Program, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Program.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Program
|
||||
with the Program (or with a work based on the Program) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
3. You may copy and distribute the Program (or a work based on it,
|
||||
under Section 2) in object code or executable form under the terms of
|
||||
Sections 1 and 2 above provided that you also do one of the following:
|
||||
|
||||
a) Accompany it with the complete corresponding machine-readable
|
||||
source code, which must be distributed under the terms of Sections
|
||||
1 and 2 above on a medium customarily used for software interchange; or,
|
||||
|
||||
b) Accompany it with a written offer, valid for at least three
|
||||
years, to give any third party, for a charge no more than your
|
||||
cost of physically performing source distribution, a complete
|
||||
machine-readable copy of the corresponding source code, to be
|
||||
distributed under the terms of Sections 1 and 2 above on a medium
|
||||
customarily used for software interchange; or,
|
||||
|
||||
c) Accompany it with the information you received as to the offer
|
||||
to distribute corresponding source code. (This alternative is
|
||||
allowed only for noncommercial distribution and only if you
|
||||
received the program in object code or executable form with such
|
||||
an offer, in accord with Subsection b above.)
|
||||
|
||||
The source code for a work means the preferred form of the work for
|
||||
making modifications to it. For an executable work, complete source
|
||||
code means all the source code for all modules it contains, plus any
|
||||
associated interface definition files, plus the scripts used to
|
||||
control compilation and installation of the executable. However, as a
|
||||
special exception, the source code distributed need not include
|
||||
anything that is normally distributed (in either source or binary
|
||||
form) with the major components (compiler, kernel, and so on) of the
|
||||
operating system on which the executable runs, unless that component
|
||||
itself accompanies the executable.
|
||||
|
||||
If distribution of executable or object code is made by offering
|
||||
access to copy from a designated place, then offering equivalent
|
||||
access to copy the source code from the same place counts as
|
||||
distribution of the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
4. You may not copy, modify, sublicense, or distribute the Program
|
||||
except as expressly provided under this License. Any attempt
|
||||
otherwise to copy, modify, sublicense or distribute the Program is
|
||||
void, and will automatically terminate your rights under this License.
|
||||
However, parties who have received copies, or rights, from you under
|
||||
this License will not have their licenses terminated so long as such
|
||||
parties remain in full compliance.
|
||||
|
||||
5. You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Program or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Program (or any work based on the
|
||||
Program), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Program or works based on it.
|
||||
|
||||
6. Each time you redistribute the Program (or any work based on the
|
||||
Program), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute or modify the Program subject to
|
||||
these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties to
|
||||
this License.
|
||||
|
||||
7. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Program at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Program by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Program.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under
|
||||
any particular circumstance, the balance of the section is intended to
|
||||
apply and the section as a whole is intended to apply in other
|
||||
circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system, which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
8. If the distribution and/or use of the Program is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Program under this License
|
||||
may add an explicit geographical distribution limitation excluding
|
||||
those countries, so that distribution is permitted only in or among
|
||||
countries not thus excluded. In such case, this License incorporates
|
||||
the limitation as if written in the body of this License.
|
||||
|
||||
9. The Free Software Foundation may publish revised and/or new versions
|
||||
of the General Public License from time to time. Such new versions will
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Program
|
||||
specifies a version number of this License which applies to it and "any
|
||||
later version", you have the option of following the terms and conditions
|
||||
either of that version or of any later version published by the Free
|
||||
Software Foundation. If the Program does not specify a version number of
|
||||
this License, you may choose any version ever published by the Free Software
|
||||
Foundation.
|
||||
|
||||
10. If you wish to incorporate parts of the Program into other free
|
||||
programs whose distribution conditions are different, write to the author
|
||||
to ask for permission. For software which is copyrighted by the Free
|
||||
Software Foundation, write to the Free Software Foundation; we sometimes
|
||||
make exceptions for this. Our decision will be guided by the two goals
|
||||
of preserving the free status of all derivatives of our free software and
|
||||
of promoting the sharing and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
|
||||
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
||||
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
||||
REPAIR OR CORRECTION.
|
||||
|
||||
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
||||
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
{description}
|
||||
Copyright (C) {year} {fullname}
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program is interactive, make it output a short notice like this
|
||||
when it starts in an interactive mode:
|
||||
|
||||
Gnomovision version 69, Copyright (C) year name of author
|
||||
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||
parts of the General Public License. Of course, the commands you use may
|
||||
be called something other than `show w' and `show c'; they could even be
|
||||
mouse-clicks or menu items--whatever suits your program.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the program, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
||||
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
||||
|
||||
{signature of Ty Coon}, 1 April 1989
|
||||
Ty Coon, President of Vice
|
||||
|
||||
This General Public License does not permit incorporating your program into
|
||||
proprietary programs. If your program is a subroutine library, you may
|
||||
consider it more useful to permit linking proprietary applications with the
|
||||
library. If this is what you want to do, use the GNU Lesser General
|
||||
Public License instead of this License.
|
54
README.md
54
README.md
|
@ -1,53 +1 @@
|
|||
AppleWin
|
||||
========
|
||||
|
||||
#### Apple II emulator for Windows
|
||||
|
||||
AppleWin is a fully-featured emulator supporting different Apple II models and clones. A variety of peripheral cards and video display modes are supported (eg. NTSC, RGB); and there's an extensive built-in symbolic debugger.
|
||||
|
||||
Peripheral cards and add-on hardware supported:
|
||||
- Mockingboard, Phasor and SAM sound cards
|
||||
- Disk II interface for floppy disk drives
|
||||
- Hard disk controller
|
||||
- Super Serial Card (SSC)
|
||||
- Parallel printer card
|
||||
- Mouse interface
|
||||
- Apple IIe Extended 80-Column Text Card and RamWorks III (8MB)
|
||||
- RGB cards: Apple's Extended 80-Column Text/AppleColor Adaptor Card, 'Le Chat Mauve' Féline and Eve.
|
||||
- CP/M SoftCard
|
||||
- Uthernet I and II (ethernet cards)
|
||||
- Language Card and Saturn 64/128K for Apple II/II+
|
||||
- 4Play and SNES MAX joystick cards
|
||||
- VidHD card (functionality limited to IIgs' Super Hi-Res video modes)
|
||||
- No Slot Clock (NSC)
|
||||
|
||||
|
||||
Download latest (stable) release: [AppleWin v1.29.16.0](https://github.com/AppleWin/AppleWin/releases/download/v1.29.16.0/AppleWin1.29.16.0.zip)
|
||||
|
||||
Release Notes: [v1.29.16.0](https://github.com/AppleWin/AppleWin/releases/tag/v1.29.16.0)
|
||||
|
||||
|
||||
Building
|
||||
========
|
||||
To compile from source see:
|
||||
|
||||
* [docs/compiling.txt](https://github.com/AppleWin/AppleWin/blob/master/docs/compiling.txt)
|
||||
|
||||
|
||||
Next Version
|
||||
============
|
||||
Experimental build: pending
|
||||
|
||||
Please report [new issues](https://github.com/AppleWin/AppleWin/issues/new)
|
||||
|
||||
|
||||
Previous Versions
|
||||
=================
|
||||
|
||||
Last version supporting Windows 2000:
|
||||
|
||||
* [AppleWin v1.29.16.0](https://github.com/AppleWin/AppleWin/releases/tag/v1.29.16.0)
|
||||
|
||||
Last version supporting Windows 98/ME:
|
||||
|
||||
* [AppleWin v1.25.0.4](https://github.com/AppleWin/AppleWin/releases/tag/v1.25.0.4)
|
||||
This is a placeholder for actual documentation later
|
||||
|
|
Binary file not shown.
912
bin/A2_BASIC.SYM
912
bin/A2_BASIC.SYM
|
@ -1,912 +0,0 @@
|
|||
; Apple 2 Applesoft Symbol Table
|
||||
; Version 2 Cross-referenced/Sync'd with APPLE2E.SYM & A2_BASIC.SYM
|
||||
; Version 1 by Michael Pohoreski - AppleWin Debugger Dev
|
||||
; Based on Bob Sander-Cederlof's "S-C DocuMentor: Applesoft"
|
||||
|
||||
EBAF ABS
|
||||
EA0E ADD.EXPONENTS
|
||||
EA10 ADD.EXPONENTS.1
|
||||
.01=EA1B .02=EA26 .03=EA28
|
||||
ECD5 ADDACC
|
||||
D998 ADDON
|
||||
.01=D9A2
|
||||
03F5 AMPERSAND.VECTOR
|
||||
DF55 AND
|
||||
A5 ARG
|
||||
92 ARG.EXTENSION
|
||||
AA ARG.SIGN
|
||||
E11E ARRAY
|
||||
.01=E12C .02=E169 .03=E16D .04=E179 .05=E188
|
||||
94 ARYPNT
|
||||
6B ARYTAB
|
||||
E6E5 ASC
|
||||
F09E ATN
|
||||
.01=F0A6 .02=F0B4 .03=F0C7
|
||||
E10C AYINT
|
||||
DFF4 BADNAM
|
||||
F3F6 BKGND
|
||||
.01=F3FE
|
||||
D393 BLTU
|
||||
D39A BLTU2
|
||||
.01=D3B7 .02=D3C3 .03=D3C7 .04=D3CE
|
||||
E09A C.ZERO
|
||||
F1D5 CALL
|
||||
E597 CAT
|
||||
.01=E5B7
|
||||
0D CHARAC
|
||||
E552 CHECK.BUMP
|
||||
E55D CHECK.EXIT
|
||||
E519 CHECK.SIMPLE.VARIABLE
|
||||
E523 CHECK.VARIABLE
|
||||
.01=E538 .02=E542
|
||||
DEB8 CHKCLS
|
||||
DEBE CHKCOM
|
||||
D3D6 CHKMEM
|
||||
DD6A CHKNUM
|
||||
DEBB CHKOPN
|
||||
DD6C CHKSTR
|
||||
DD6D CHKVAL
|
||||
.01=DD73 .02=DD74 .03=DD76
|
||||
B1 CHRGET
|
||||
B7 CHRGOT
|
||||
E646 CHRSTR
|
||||
D66A CLEAR
|
||||
D66C CLEARC
|
||||
DFC1 CMPDONE
|
||||
.01=DFCA
|
||||
F128 COLD.START
|
||||
.01=F152 .02=F181 .03=F195 .04=F1B8
|
||||
D842 COLON.
|
||||
; Applesoft COLOR F24F
|
||||
; ROM/Monitor COLOR 30
|
||||
F24F A.COLOR
|
||||
F47E COLOR.SHIFT
|
||||
.01=F489
|
||||
F6F6 COLORTBL
|
||||
E74C COMBYTE
|
||||
E89E COMPLEMENT.FAC
|
||||
E8A4 COMPLEMENT.FAC.MANTISSA
|
||||
F4CD CON.03
|
||||
F508 CON.04
|
||||
.01=F524 .02=F52A .03=F52C
|
||||
F5B9 CON.1C
|
||||
ED0A CON.99999999.9
|
||||
ED0F CON.999999999
|
||||
ED14 CON.BILLION
|
||||
EE64 CON.HALF
|
||||
EEDB CON.LOG.E
|
||||
E93C CON.LOG.TWO
|
||||
E937 CON.NEG.HALF
|
||||
E913 CON.ONE
|
||||
F06B CON.PI.DOUB
|
||||
F066 CON.PI.HALF
|
||||
EFA6 CON.RND.1
|
||||
EFAA CON.RND.2
|
||||
E92D CON.SQR.HALF
|
||||
E932 CON.SQR.TWO
|
||||
EA50 CON.TEN
|
||||
E6FB CONINT
|
||||
D896 CONT
|
||||
.01=D8A1
|
||||
D863 CONTROL.C.TYPED
|
||||
.02=D86C
|
||||
EB53 COPY.ARG.TO.FAC
|
||||
EB63 COPY.FAC.TO.ARG.ROUNDED
|
||||
EAE6 COPY.RESULT.INTO.FAC
|
||||
EFEA COS
|
||||
F5BA COSINE.TABLE
|
||||
16 CPRMASK
|
||||
89 CPRTYP
|
||||
DAFB CRDO
|
||||
75 CURLIN
|
||||
F6 CURLSV
|
||||
D995 DATA
|
||||
13 DATAFLG
|
||||
D9A3 DATAN
|
||||
7B DATLIN
|
||||
7D DATPTR
|
||||
EE69 DECTBL
|
||||
EE8D DECTBL.END
|
||||
E313 DEF
|
||||
F331 DEL
|
||||
.01=F357 .02=F365 .03=F367 .04=F371 .05=F377 .06=F388
|
||||
60 DEST
|
||||
DFD9 DIM
|
||||
10 DIMFLG
|
||||
EA5E DIV
|
||||
EA55 DIV10
|
||||
DB35 DOSPC
|
||||
9B DPFLG
|
||||
F769 DRAW
|
||||
F601 DRAW0
|
||||
F605 DRAW1
|
||||
.01=F626 .02=F630 .03=F63D .04=F648 .05=F658
|
||||
F72D DRWPNT
|
||||
.01=F741 .02=F747 .03=F766
|
||||
8F DSCLEN
|
||||
8C DSCPTR
|
||||
9D DSCTMP
|
||||
D870 END
|
||||
D871 END2
|
||||
.01=D888
|
||||
D88A END4
|
||||
.01=D893
|
||||
0E ENDCHR
|
||||
0F EOL.PNTR
|
||||
DED0 EQUL
|
||||
DE98 EQUOP
|
||||
.01=DE9F
|
||||
DB7F ERLIN
|
||||
; 6B ERR.BADSUBS
|
||||
; A3 ERR.BADTYPE
|
||||
; D2 ERR.CANTCONT
|
||||
DCDF ERR.EXTRA
|
||||
; BF ERR.FRMCPX
|
||||
; 95 ERR.ILLDIR
|
||||
; 35 ERR.ILLQTY
|
||||
; 4D ERR.MEMFULL
|
||||
; 2A ERR.NODATA
|
||||
; 00 ERR.NOFOR
|
||||
; 16 ERR.NOGOSUB
|
||||
; 45 ERR.OVERFLOW
|
||||
; 78 ERR.REDIMD
|
||||
DCEF ERR.REENTRY
|
||||
; B0 ERR.STRLONG
|
||||
; 10 ERR.SYNTAX
|
||||
; E0 ERR.UNDEFFUNC
|
||||
; 5A ERR.UNDEFSTAT
|
||||
; 85 ERR.ZERODIV
|
||||
E306 ERRDIR
|
||||
; D8 ERRFLG
|
||||
; DA ERRLIN
|
||||
; DE ERRNUM
|
||||
D412 ERROR
|
||||
.01=D419 .02=D41F
|
||||
D260 ERROR.MESSAGES
|
||||
DC ERRPOS
|
||||
DF ERRSTK
|
||||
D828 EXECUTE.STATEMENT
|
||||
D82A EXECUTE.STATEMENT.1
|
||||
.01=D83F
|
||||
DE5D EXIT
|
||||
EF09 EXP
|
||||
.01=EF19 .02=EF24 .03=EF27 .04=EF37
|
||||
9A EXPON
|
||||
9C EXPSGN
|
||||
9D FAC
|
||||
AC FAC.EXTENSION
|
||||
A2 FAC.SIGN
|
||||
E7BE FADD
|
||||
E7B9 FADD.1
|
||||
E7CE FADD.2
|
||||
.01=E7EA .02=E7EE
|
||||
E7FA FADD.3
|
||||
.01=E806
|
||||
E855 FADD.4
|
||||
E7A0 FADDH
|
||||
E7C1 FADDT
|
||||
.01=E7C6
|
||||
E253 FAE.1
|
||||
E26F FAE.2
|
||||
E270 FAE.3
|
||||
.01=E281 .02=E292 .03=E298
|
||||
DF5D FALSE
|
||||
EBB2 FCOMP
|
||||
EBB4 FCOMP2
|
||||
.01=EBE9 .02=EBEF
|
||||
EA66 FDIV
|
||||
EA69 FDIVT
|
||||
.01=EA80 .02=EA96 .03=EAA3 .04=EAA6 .05=EAB4 .06=EAD1 .07=EAD5
|
||||
.08=EAE1
|
||||
EC4A FIN
|
||||
.01=EC4E .02=EC5D
|
||||
EC61 FIN.1
|
||||
EC98 FIN.10
|
||||
EC64 FIN.2
|
||||
EC66 FIN.3
|
||||
.01=EC85
|
||||
EC87 FIN.4
|
||||
EC8A FIN.5
|
||||
EC8C FIN.6
|
||||
EC9E FIN.7
|
||||
ECA0 FIN.8
|
||||
.13=ECA9 .14=ECB2 .15=ECB9 .16=ECBE
|
||||
ECC1 FIN.9
|
||||
.01=ECC8
|
||||
E24B FIND.ARRAY.ELEMENT
|
||||
E488 FIND.HIGHEST.STRING
|
||||
.01=E4A0 .02=E4A9 .03=E4B5 .04=E4BD .05=E4C2 .06=E4CA .07=E4CE
|
||||
.08=E4D9 .09=E50A .10=E50C .11=E514
|
||||
DCA0 FINDATA
|
||||
.01=DCB9
|
||||
F0 FIRST
|
||||
D4F2 FIX.LINKS
|
||||
.01=D4FE .02=D50F .03=D511
|
||||
D61E FL1
|
||||
.01=D635 .02=D63E .03=D647
|
||||
F280 FLASH
|
||||
F3 FLASH.BIT
|
||||
EB93 FLOAT
|
||||
EB9B FLOAT.1
|
||||
EBA0 FLOAT.2
|
||||
E97F FMULT
|
||||
E982 FMULTT
|
||||
.01=E987
|
||||
DEA4 FN.
|
||||
E341 FNC.
|
||||
E3AF FNCDATA
|
||||
8A FNCNAM
|
||||
D61A FNDLIN
|
||||
D766 FOR
|
||||
.01=D777
|
||||
85 FORPNT
|
||||
ED34 FOUT
|
||||
ED36 FOUT.1
|
||||
.01=ED41 .02=ED4F .03=ED57 .04=ED60 .05=ED62 .06=ED6D .07=ED78
|
||||
.08=ED7F .09=ED86 .10=ED89
|
||||
ED8C FOUT.2
|
||||
.01=ED9E .02=ED9F .03=EDAA .04=EDBB .05=EDBD .06=EDC1 .07=EDE5
|
||||
.08=EDE7 .09=EDEE .10=EE09
|
||||
EE17 FOUT.3
|
||||
.01=EE19 .02=EE26 .03=EE36 .04=EE42
|
||||
EE57 FOUT.4
|
||||
EE5A FOUT.5
|
||||
EE5F FOUT.6
|
||||
EE97 FPWRT
|
||||
.01=EEA0 .02=EEBA
|
||||
E2DE FRE
|
||||
.01=E2E5
|
||||
E600 FREFAC
|
||||
71 FRESPC
|
||||
E5FD FRESTR
|
||||
E604 FRETMP
|
||||
.01=E62F .02=E630
|
||||
E635 FRETMS
|
||||
.01=E645
|
||||
6F FRETOP
|
||||
DE60 FRM.ELEMENT
|
||||
.01=DE64 .02=DE69 .03=DE6C
|
||||
DE3A FRM.PERFORM.1
|
||||
.01=DE41
|
||||
DE43 FRM.PERFORM.2
|
||||
DDCD FRM.PRECEDENCE.TEST
|
||||
DDFD FRM.RECURSE
|
||||
DDE4 FRM.RELATIONAL
|
||||
.01=DDEE
|
||||
DE10 FRM.STACK.1
|
||||
DE15 FRM.STACK.2
|
||||
DE20 FRM.STACK.3
|
||||
DED5 FRM.VARIABLE
|
||||
DED7 FRM.VARIABLE.CALL
|
||||
.01=DEE5 .02=DEF6
|
||||
DD7B FRMEVL
|
||||
.01=DD81
|
||||
DD86 FRMEVL.1
|
||||
DD95 FRMEVL.2
|
||||
.01=DD98 .02=DDB4 .03=DDC5
|
||||
DD67 FRMNUM
|
||||
E7A7 FSUB
|
||||
E7AA FSUBT
|
||||
E354 FUNCT
|
||||
.01=E378 .02=E3A9
|
||||
E484 GARBAG
|
||||
13 GARFLG
|
||||
F10B GENERIC.CHRGET
|
||||
.01=F111 .02=F122
|
||||
DD0D GERR
|
||||
DBA0 GET
|
||||
E752 GETADR
|
||||
E0ED GETARY
|
||||
E0EF GETARY2
|
||||
.01=E0F9
|
||||
F7D9 GETARYPT
|
||||
E6F8 GETBYT
|
||||
D72C GETCHR
|
||||
.01=D731
|
||||
ECE8 GETEXP
|
||||
.01=ECF7 .02=ED05
|
||||
E452 GETSPA
|
||||
.01=E454 .02=E45F .03=E469 .04=E474
|
||||
E6DC GETSTR
|
||||
F6E6 GGERR
|
||||
E948 GIQ
|
||||
E2F2 GIVAYF
|
||||
E26C GME
|
||||
EFE7 GO.MOVMF
|
||||
ED31 GO.STROUT
|
||||
D935 GO.TO.LINE
|
||||
D826 GOEND
|
||||
; Applesoft GOERR F206
|
||||
; Firmware??? GOERR CF53
|
||||
F206 A.GOERR
|
||||
DE38 GOEX
|
||||
E6F2 GOIQ
|
||||
03 GOSTROUT
|
||||
D921 GOSUB
|
||||
D93E GOTO
|
||||
.01=D955 .02=D959
|
||||
00 GOWARM
|
||||
F390 GR
|
||||
E269 GSE
|
||||
E6F5 GTBYTC
|
||||
D365 GTFORPNT
|
||||
.01=D36A .02=D37F .03=D38B .04=D392
|
||||
E746 GTNUM
|
||||
F2E9 HANDLERR
|
||||
F3F2 HCLR
|
||||
F6E9 HCOLOR
|
||||
F5CB HFIND
|
||||
.01=F5F0 .02=F5FE
|
||||
F6B9 HFNS
|
||||
.01=F6CD
|
||||
F53A HGLIN
|
||||
.01=F550 .02=F568
|
||||
F3E2 HGR
|
||||
1C HGR.BITS
|
||||
EA HGR.COLLISIONS
|
||||
E4 HGR.COLOR
|
||||
1D HGR.COUNT
|
||||
D0 HGR.DX
|
||||
D2 HGR.DY
|
||||
D4 HGR.E
|
||||
E5 HGR.HORIZ
|
||||
E6 HGR.PAGE
|
||||
D3 HGR.QUADRANT
|
||||
F9 HGR.ROTATION
|
||||
E7 HGR.SCALE
|
||||
1A HGR.SHAPE
|
||||
E8 HGR.SHAPE.PNTR
|
||||
E0 HGR.X
|
||||
E2 HGR.Y
|
||||
F3D8 HGR2
|
||||
94 HIGHDS
|
||||
96 HIGHTR
|
||||
F286 HIMEM
|
||||
F232 HLIN
|
||||
F530 HLINRL
|
||||
F6FE HPLOT
|
||||
.01=F708 .02=F70F
|
||||
F457 HPLOT0
|
||||
F411 HPOSN
|
||||
.01=F441 .02=F442
|
||||
F7E7 HTAB
|
||||
.01=F7EC .02=F7FA
|
||||
D9C9 IF
|
||||
.01=D9D8
|
||||
D9E1 IF.TRUE
|
||||
.01=D9E9
|
||||
F1DE IN.NUMBER
|
||||
D553 INCHR
|
||||
E8C6 INCREMENT.FAC.MANTISSA
|
||||
EB7A INCREMENT.MANTISSA
|
||||
5E INDEX
|
||||
99 INDX
|
||||
D52C INLIN
|
||||
D52E INLIN2
|
||||
.01=D539 .02=D541 .03=D54C
|
||||
DCC6 INPDONE
|
||||
.01=DCD1 .02=DCDE
|
||||
DB86 INPERR
|
||||
DC99 INPFIN
|
||||
; Applesoft INPRT ED19
|
||||
; ROM/Monitor INPRT FE8D
|
||||
ED19 A.INPRT
|
||||
7F INPTR
|
||||
DBB2 INPUT
|
||||
.01=DBC4 .02=DBC7
|
||||
0200 INPUT.BUFFER
|
||||
DC69 INPUT.DATA
|
||||
DBE9 INPUT.FLAG.ZERO
|
||||
DC72 INPUT.MORE
|
||||
.01=DC7E
|
||||
DB71 INPUTERR
|
||||
15 INPUTFLG
|
||||
DC2B INSTART
|
||||
.01=DC3F .02=DC4B .03=DC4C .04=DC57 .05=DC63
|
||||
EC23 INT
|
||||
F277 INVERSE
|
||||
E199 IQERR
|
||||
D858 ISCNTC
|
||||
.01=D860
|
||||
E07D ISLETC
|
||||
.01=E086
|
||||
E19B JER
|
||||
E432 JERR
|
||||
DD78 JERROR
|
||||
F296 JMM
|
||||
90 JMPADRS
|
||||
EA36 JOV
|
||||
F32E JSYN
|
||||
C000 KEYBOARD
|
||||
E8FD L
|
||||
.01=E903
|
||||
87 LASTOP
|
||||
53 LASTPT
|
||||
E65A LEFTSTR
|
||||
E6D6 LEN
|
||||
91 LENGTH
|
||||
DA46 LET
|
||||
DA7A LET.STRING
|
||||
DA63 LET2
|
||||
.01=DA77
|
||||
F209 LINCOOR
|
||||
.01=F218
|
||||
DA0C LINGET
|
||||
.01=DA12 .02=DA40
|
||||
50 LINNUM
|
||||
ED24 LINPRT
|
||||
; Applesoft LIST D6A5
|
||||
; ROM/Monitor LIST FE5E
|
||||
D6A5 A.LIST
|
||||
.01=D6B1 .02=D6C4 .03=D6CC
|
||||
D6DA LIST.0
|
||||
.05=D6F5 .06=D6F7
|
||||
D6FE LIST.1
|
||||
D702 LIST.2
|
||||
.01=D712
|
||||
D724 LIST.3
|
||||
D734 LIST.4
|
||||
.01=D746 .02=D749 .03=D750 .04=D755 .05=D75F
|
||||
D8C9 LOAD
|
||||
.01=D8ED
|
||||
E9E3 LOAD.ARG.FROM.YA
|
||||
EAF9 LOAD.FAC.FROM.YA
|
||||
D6 LOCK
|
||||
E941 LOG
|
||||
E94B LOG.2
|
||||
F2A6 LOMEM
|
||||
9B LOWTR
|
||||
F46E LR.1
|
||||
F471 LR.2
|
||||
F476 LR.3
|
||||
F478 LR.4
|
||||
F4B3 LRUD1
|
||||
F4B4 LRUD2
|
||||
F4C4 LRUD3
|
||||
F4C8 LRUD4
|
||||
F49C LRUDX1
|
||||
F49D LRUDX2
|
||||
D0CA M.EQU
|
||||
D0C7 M.NEG
|
||||
D0CD M.REL
|
||||
EB66 MAF
|
||||
.01=EB68
|
||||
E1B8 MAKE.NEW.ARRAY
|
||||
.01=E1C1 .02=E1D5 .03=E1DE .04=E1E7 .05=E1F7 .06=E21A .07=E229
|
||||
.08=E22E
|
||||
E09C MAKE.NEW.VARIABLE
|
||||
.01=E0B2
|
||||
E102 MAKINT
|
||||
D0B2 MATHTBL
|
||||
D410 MEMERR
|
||||
73 MEMSIZ
|
||||
EB55 MFA
|
||||
.01=EB59
|
||||
E119 MI1
|
||||
E11B MI2
|
||||
E691 MIDSTR
|
||||
.01=E6A2
|
||||
DECE MIN
|
||||
E108 MKINT
|
||||
3D MON.A1H
|
||||
3C MON.A1L
|
||||
3F MON.A2H
|
||||
3E MON.A2L
|
||||
24 MON.CH
|
||||
E562 MOVE.HIGHEST.STRING.TO.TOP
|
||||
F465 MOVE.LEFT.OR.RIGHT
|
||||
F48A MOVE.RIGHT
|
||||
F4D3 MOVE.UP.OR.DOWN
|
||||
.01=F4EB .02=F4F6 .03=F4FB .04=F4FD .05=F4FF
|
||||
F57C MOVEX
|
||||
F581 MOVEX2
|
||||
.01=F58B .02=F59E
|
||||
E5D4 MOVINS
|
||||
E5E2 MOVSTR
|
||||
E5E6 MOVSTR.1
|
||||
.01=E5EA .02=E5F3 .03=E5FC
|
||||
F5B2 MSKTBL
|
||||
EA39 MUL10
|
||||
.01=EA4F
|
||||
E9B0 MULTIPLY.1
|
||||
E9B5 MULTIPLY.2
|
||||
.01=E9B8 .02=E9D4
|
||||
E2B6 MULTIPLY.SUBS.1
|
||||
.01=E2C0 .02=E2D9
|
||||
E2AD MULTIPLY.SUBSCRIPT
|
||||
F279 N.I.
|
||||
F27B N.I.F.
|
||||
E087 NAME.NOT.FOUND
|
||||
DFF7 NAMOK
|
||||
E0FE NEG32768
|
||||
DB00 NEGATE
|
||||
EED0 NEGOP
|
||||
D649 NEW
|
||||
D7D2 NEWSTT
|
||||
.01=D7E5 .02=D805
|
||||
DCF9 NEXT
|
||||
DCFF NEXT.1
|
||||
DD02 NEXT.2
|
||||
DD0F NEXT.3
|
||||
.01=DD52 .02=DD55
|
||||
F273 NORMAL
|
||||
E829 NORMALIZE.FAC.1
|
||||
E82E NORMALIZE.FAC.2
|
||||
.01=E832
|
||||
E874 NORMALIZE.FAC.3
|
||||
E880 NORMALIZE.FAC.4
|
||||
E88D NORMALIZE.FAC.5
|
||||
E88F NORMALIZE.FAC.6
|
||||
DE90 NOT.
|
||||
DE35 NOTMATH
|
||||
F26F NOTRACE
|
||||
D45C NUMBERED.LINE
|
||||
.01=D49F .02=D4A7
|
||||
DFB0 NUMCMP
|
||||
0F NUMDIM
|
||||
DFD6 NXDIM
|
||||
DBDC NXIN
|
||||
DDD6 NXOP
|
||||
DB2C NXSPC
|
||||
77 OLDLIN
|
||||
79 OLDTEXT
|
||||
D9F4 ON.1
|
||||
D9F8 ON.2
|
||||
.03=DA00
|
||||
F2CB ONERR
|
||||
D9EC ONGOTO
|
||||
DF4F OR
|
||||
DB5C OUTDO
|
||||
.01=DB64
|
||||
EA2B OUTOFRNG
|
||||
DB5A OUTQUES
|
||||
DB57 OUTSP
|
||||
E8D5 OVERFLOW
|
||||
79 P.ADD
|
||||
50 P.AND
|
||||
7B P.MUL
|
||||
7F P.NEQ
|
||||
46 P.OR
|
||||
7D P.PWR
|
||||
64 P.REL
|
||||
DEB2 PARCHK
|
||||
D56C PARSE
|
||||
.01=D56D .02=D578 .03=D588 .04=D590 .05=D5A2 .06=D5A7 .07=D5A8
|
||||
.08=D5CB .09=D5CD .10=D5E0 .11=D5E2 .12=D5E9 .13=D5F2 .14=D5F9
|
||||
.15=D5FD .16=D604 .17=D610
|
||||
D559 PARSE.INPUT.LINE
|
||||
DFCD PDL
|
||||
E764 PEEK
|
||||
; Applesoft PLOT F800
|
||||
; ROM/Monitor PLOT F225
|
||||
F225 A.PLOT
|
||||
F1EC PLOTFNS
|
||||
E73D POINT
|
||||
E77B POKE
|
||||
F0CE POLY.ATN
|
||||
EEE0 POLY.EXP
|
||||
E918 POLY.LOG
|
||||
F075 POLY.SIN
|
||||
EF72 POLYNOMIAL
|
||||
EF5C POLYNOMIAL.ODD
|
||||
D96B POP
|
||||
E2FF POS
|
||||
DB03 PR.COMMA
|
||||
.01=DB0E
|
||||
DB2F PR.NEXT.CHAR
|
||||
F1E5 PR.NUMBER
|
||||
DACF PR.STRING
|
||||
DB16 PR.TAB.OR.SPC
|
||||
.01=DB21 .02=DB2B
|
||||
DDF6 PREFNC
|
||||
AF PRGEND
|
||||
DAD5 PRINT
|
||||
D431 PRINT.ERROR.LINNUM
|
||||
ED2E PRINT.FAC
|
||||
DAD7 PRINT2
|
||||
DBF1 PROCESS.INPUT.ITEM
|
||||
.01=DC1F .02=DC27
|
||||
DBEB PROCESS.INPUT.LIST
|
||||
D901 PROGIO
|
||||
DFE3 PTRGET
|
||||
DFE8 PTRGET2
|
||||
DFEA PTRGET3
|
||||
E007 PTRGET4
|
||||
.01=E011 .02=E012 .03=E01C .04=E026 .05=E036 .06=E03D .07=E046
|
||||
.08=E049 .09=E04F .10=E059 .11=E05B .12=E065 .13=E073
|
||||
D9C5 PULL3
|
||||
D4B5 PUT.NEW.LINE
|
||||
.01=D4D1 .02=D4EA
|
||||
E435 PUTEMP
|
||||
E42A PUTNEW
|
||||
DA7B PUTSTR
|
||||
.01=DA8C .02=DA9A .03=DAA1 .04=DAB7
|
||||
EBF2 QINT
|
||||
.01=EC06
|
||||
EC12 QINT.2
|
||||
EC40 QINT.3
|
||||
D35D QT.BREAK
|
||||
D350 QT.ERROR
|
||||
D358 QT.IN
|
||||
F070 QUARTER
|
||||
; Applesoft READ DBE2
|
||||
; ROM/Monitor READ FEFD
|
||||
DBE2 A.READ
|
||||
DB7B READERR
|
||||
D3E3 REASON
|
||||
.01=D3ED .02=D3F1 .03=D3FC .04=D40F
|
||||
F3BC RECALL
|
||||
.01=F3D2
|
||||
DF65 RELOPS
|
||||
D9DC REM
|
||||
D9A6 REMN
|
||||
.01=D9AE .02=D9B6
|
||||
F8 REMSTK
|
||||
DB87 RESPERR
|
||||
.01=DB90
|
||||
D43C RESTART
|
||||
; Applesoft RESTORE D849
|
||||
; ROM/Monitor RESTORE FF3F
|
||||
D849 A.RESTORE
|
||||
62 RESULT
|
||||
F318 RESUME
|
||||
D984 RETURN
|
||||
E686 RIGHTSTR
|
||||
EFAE RND
|
||||
.01=EFCC
|
||||
C9 RNDSEED
|
||||
F721 ROT
|
||||
EB72 ROUND.FAC
|
||||
D648 RTS.1
|
||||
E79F RTS.10
|
||||
E89D RTS.11
|
||||
E8D4 RTS.12
|
||||
E9E2 RTS.13
|
||||
EB71 RTS.14
|
||||
EB8F RTS.15
|
||||
EC11 RTS.16
|
||||
EC49 RTS.17
|
||||
EEDA RTS.18
|
||||
EFA5 RTS.19
|
||||
D696 RTS.2
|
||||
F0CD RTS.20
|
||||
F600 RTS.22
|
||||
F6F5 RTS.23
|
||||
D857 RTS.3
|
||||
D8AF RTS.4
|
||||
D96A RTS.5
|
||||
D9A2 RTS.6
|
||||
DA0B RTS.7
|
||||
DB02 RTS.8
|
||||
E2AC RTS.9
|
||||
D912 RUN
|
||||
.01=D91B
|
||||
; Applesoft SAVE D8B0
|
||||
; ROM/Monitor SAVE FF4A
|
||||
D8B0 A.SAVE
|
||||
DDD7 SAVOP
|
||||
F727 SCALE
|
||||
; Applesoft SCREEN DEF9
|
||||
; ??? SCREEN 05B8
|
||||
DEF9 A.SCREEN
|
||||
D64B SCRTCH
|
||||
A3 SERLEN
|
||||
EF76 SERMAIN
|
||||
.01=EF85 .02=EF89 .03=EF96
|
||||
AD SERPNT
|
||||
E0DE SET.VARPNT.AND.YA
|
||||
.01=E0E8
|
||||
D853 SETDA
|
||||
EB27 SETFOR
|
||||
F299 SETHI
|
||||
F3EA SETHPG
|
||||
D665 SETPTRS
|
||||
EB90 SGN
|
||||
DEAB SGN.
|
||||
AB SGNCPR
|
||||
E8F0 SHIFT.RIGHT
|
||||
E8DA SHIFT.RIGHT.1
|
||||
E8DC SHIFT.RIGHT.2
|
||||
E8FD SHIFT.RIGHT.3
|
||||
E907 SHIFT.RIGHT.4
|
||||
E911 SHIFT.RIGHT.5
|
||||
A4 SHIFT.SIGN.EXT
|
||||
F775 SHLOAD
|
||||
.01=F796 .02=F7A0 .03=F7A3
|
||||
EB82 SIGN
|
||||
EB86 SIGN1
|
||||
EB88 SIGN2
|
||||
16 SIGNFLG
|
||||
EFF1 SIN
|
||||
F023 SIN.1
|
||||
F026 SIN.2
|
||||
.01=F033
|
||||
E301 SNGFLT
|
||||
DE0D SNTXERR
|
||||
F262 SPEED
|
||||
F1 SPEEDZ
|
||||
EE8D SQR
|
||||
E852 STA.IN.FAC.SIGN
|
||||
E850 STA.IN.FAC.SIGN.AND.EXP
|
||||
0100 STACK
|
||||
D7AF STEP
|
||||
.01=D7C3
|
||||
D683 STKINI
|
||||
D86E STOP
|
||||
F39F STORE
|
||||
.01=F3AF
|
||||
EB2B STORE.FAC.AT.YX.ROUNDED
|
||||
EB21 STORE.FAC.IN.TEMP1.ROUNDED
|
||||
EB1E STORE.FAC.IN.TEMP2.ROUNDED
|
||||
E3C5 STR
|
||||
DF7D STRCMP
|
||||
.01=DFA5
|
||||
DFAA STRCMP.1
|
||||
DFB5 STRCMP.2
|
||||
6D STREND
|
||||
E3D5 STRINI
|
||||
E3E7 STRLIT
|
||||
E3ED STRLT2
|
||||
.01=E3F7 .02=E404 .03=E408 .04=E409 .05=E415 .06=E41F
|
||||
AB STRNG1
|
||||
AD STRNG2
|
||||
DB3A STROUT
|
||||
DB3D STRPRT
|
||||
.01=DB44
|
||||
E3DD STRSPA
|
||||
DE81 STRTXT
|
||||
.01=DE8A
|
||||
D697 STXTPT
|
||||
E196 SUBERR
|
||||
14 SUBFLG
|
||||
E660 SUBSTRING.1
|
||||
.01=E666
|
||||
E667 SUBSTRING.2
|
||||
E668 SUBSTRING.3
|
||||
.01=E67F
|
||||
E6B9 SUBSTRING.SETUP
|
||||
C057 SW.HIRES
|
||||
C055 SW.HISCR
|
||||
C056 SW.LORES
|
||||
C054 SW.LOWSCR
|
||||
C052 SW.MIXCLR
|
||||
C053 SW.MIXSET
|
||||
C050 SW.TXTCLR
|
||||
DEC0 SYNCHR
|
||||
DEC9 SYNERR
|
||||
D846 SYNERR.1
|
||||
D981 SYNERR.2
|
||||
F03A TAN
|
||||
F062 TAN.1
|
||||
F7BC TAPEPNT
|
||||
93 A.TEMP1
|
||||
; Applesoft TEMP2 98
|
||||
; ROM/Monitor TEMP2 07FB
|
||||
98 A.TEMP2
|
||||
8A A.TEMP3
|
||||
52 A.TEMPPT
|
||||
55 A.TEMPST
|
||||
F399 TEXT
|
||||
0F TKN.CNTR
|
||||
99 TMPEXP
|
||||
D000 TOKEN.ADDRESS.TABLE
|
||||
; C5 TOKEN.AT
|
||||
; 83 TOKEN.DATA
|
||||
; D0 TOKEN.EQUAL
|
||||
; C2 TOKEN.FN
|
||||
; 81 TOKEN.FOR
|
||||
; B0 TOKEN.GOSUB
|
||||
; AB TOKEN.GOTO
|
||||
; CF TOKEN.GREATER
|
||||
; E8 TOKEN.LEFTSTR
|
||||
; C9 TOKEN.MINUS
|
||||
D0D0 TOKEN.NAME.TABLE
|
||||
; C6 TOKEN.NOT
|
||||
; C8 TOKEN.PLUS
|
||||
; A1 TOKEN.POP
|
||||
; BA TOKEN.PRINT
|
||||
; B2 TOKEN.REM
|
||||
; D7 TOKEN.SCRN
|
||||
; D2 TOKEN.SGN
|
||||
; C3 TOKEN.SPC
|
||||
; C7 TOKEN.STEP
|
||||
; C0 TOKEN.TAB
|
||||
; C4 TOKEN.THEN
|
||||
; C1 TOKEN.TO
|
||||
|
||||
; Applesoft TRACE F26D
|
||||
; ROM/Monitor TRACE FEC2
|
||||
F26D A.TRACE
|
||||
D805 TRACE.
|
||||
.00=D81D
|
||||
F2 TRCFLG
|
||||
DF60 TRUE
|
||||
87 TXPSV
|
||||
F4 TXTPSV
|
||||
B8 TXTPTR
|
||||
67 TXTTAB
|
||||
F501 UD.1
|
||||
DF0C UNARY
|
||||
.01=DF3A .02=DF3F
|
||||
D97C UNDERR
|
||||
E30E UNDFNC
|
||||
D080 UNFNC
|
||||
E19E USE.OLD.ARRAY
|
||||
.01=E1AA
|
||||
; Applesoft USR 0A
|
||||
; ROM/Monitor USR FECA
|
||||
0A A.USR
|
||||
E707 VAL
|
||||
.01=E70F .02=E727
|
||||
11 VALTYP
|
||||
81 VARNAM
|
||||
83 VARPNT
|
||||
69 VARTAB
|
||||
D8F0 VARTIO
|
||||
F241 VLIN
|
||||
A0 VPNT
|
||||
; Applesoft VTAB F256
|
||||
; Firmware??? VTAB CDFE
|
||||
; ROM/Monitor VTAB FC22
|
||||
F256 A.VTAB
|
||||
; Applesoft WAIT E784
|
||||
; ROM/Monitor WAIT FCA8
|
||||
E784 A.WAIT
|
||||
.01=E793 .02=E797
|
||||
F76F XDRAW
|
||||
F65D XDRAW0
|
||||
F661 XDRAW1
|
||||
.01=F682 .02=F68C .03=F699 .04=F6A4 .05=F6B4
|
||||
EA31 ZERO
|
||||
E84E ZERO.FAC
|
||||
|
||||
; Duplicate(s)
|
||||
; F128 GENERIC.END
|
||||
|
||||
F094 MICROSOFT_EOR87
|
||||
|
||||
F079 PI2_11
|
||||
F07E PI2_9
|
||||
F083 PI2_7
|
||||
F088 PI2_5
|
||||
F08D PI2_3
|
||||
F092 PI2
|
||||
|
||||
; Removed ROM/Monitor
|
||||
;FDED MON.COUT
|
||||
; 27 MON.GBASH
|
||||
; 26 MON.GBASL
|
||||
;FD6A MON.GETLN
|
||||
; 2C MON.H2
|
||||
;F819 MON.HLINE
|
||||
; 30 MON.HMASK
|
||||
;FC58 MON.HOME
|
||||
;FE8B MON.INPORT
|
||||
; 32 MON.INVFLG
|
||||
;FE95 MON.OUTPORT
|
||||
;F800 MON.PLOT
|
||||
;FB1E MON.PREAD
|
||||
; 33 MON.PROMPT
|
||||
FCFA MON.RD2BIT
|
||||
;FD0C MON.RDKEY
|
||||
;FEFD MON.READ
|
||||
FF02 MON.READ2
|
||||
;F871 MON.SCRN
|
||||
;F864 MON.SETCOL
|
||||
;FB40 MON.SETGR
|
||||
;FB39 MON.SETTXT
|
||||
;FB5B MON.TABV
|
||||
; 2D MON.V2
|
||||
;F828 MON.VLINE
|
||||
;FCA8 MON.WAIT
|
||||
;FECD MON.WRITE
|
||||
F505 MOVE.DOWN
|
||||
|
||||
; Zero Page Addresses
|
||||
;00B1 CHRGET
|
||||
;00B7 CHRGOT
|
||||
00B8 TXTPTRL
|
||||
00B9 TXTPTRH
|
||||
|
||||
0094 HIGHDSL
|
||||
0095 HIGHDSH
|
917
bin/APPLE2E.SYM
917
bin/APPLE2E.SYM
|
@ -1,917 +0,0 @@
|
|||
; Apple 2 Rom Symbol Table
|
||||
; Version 5 Renamed "KBD/CLR80COL" -> "KBD/CLR80STORE", "SET80COL" -> "SET80STORE"
|
||||
; Renamed "CLR80VID" -> "CLR80COL", "SET80VID" -> "SET80COL"
|
||||
; Renamed "RD80COL" -> "RD80STORE", "RD80VID" -> "RD80COL"
|
||||
; Version 4 GH#484
|
||||
; Version 3 Cross-referenced/Sync'd with APPLE2E.SYM & A2_BASIC.SYM
|
||||
; Added Text Holes
|
||||
; Version 2 by Michael Pohoreski - AppleWin Debugger Dev
|
||||
; Version 1 Original
|
||||
|
||||
0000 LOC0
|
||||
0001 LOC1
|
||||
0020 WNDLFT
|
||||
0021 WNDWDTH
|
||||
0022 WNDTOP
|
||||
0023 WNDBTM
|
||||
0024 CH
|
||||
0025 CV
|
||||
0026 GBASL
|
||||
0027 GBASH
|
||||
0028 BASL
|
||||
0029 BASH
|
||||
002A BAS2L
|
||||
002B BAS2H
|
||||
002C H2/LMNEM
|
||||
002D V2/RMNEM
|
||||
;$2E aliases 3 symbols
|
||||
;36 MASK EQU $2E
|
||||
;37 CHKSUM EQU $2E
|
||||
;38 FORMAT EQU $2E
|
||||
002E F8.MASK
|
||||
002F LENGTH/LASTIN
|
||||
; Applesoft COLOR F24F
|
||||
; ROM/Monitor COLOR 30
|
||||
; Reference: Apple ][ Reference Manual
|
||||
0030 COLOR
|
||||
0031 MODE
|
||||
0032 INVFLG
|
||||
0033 PROMPT
|
||||
0034 YSAV
|
||||
0035 SAVY1
|
||||
0036 CSWL
|
||||
0037 CSWH
|
||||
0038 KSWL
|
||||
0039 KSWH
|
||||
003A PCL
|
||||
003B PCH
|
||||
003C A1L
|
||||
003D A1H
|
||||
003E A2L
|
||||
003F A2H
|
||||
0040 A3L
|
||||
0041 A3H
|
||||
0042 A4L
|
||||
0043 A4H
|
||||
0044 A5L/MACSTAT
|
||||
0045 A5H/ACC
|
||||
0046 XREG
|
||||
0047 YREG
|
||||
0049 SPNT
|
||||
004E RNDL
|
||||
004F RNDH
|
||||
0200 BUF/IN
|
||||
03F0 BRKV
|
||||
03F2 SOFTEV
|
||||
03F4 PWREDUP
|
||||
03F5 AMPERV
|
||||
03F8 USRADR
|
||||
03FB NMI
|
||||
03FE IRQLOC
|
||||
0400 LINE1
|
||||
|
||||
; Reference: Apple ][ Reference Manual, Pg 173
|
||||
07F8 MSLOT
|
||||
|
||||
; Reference: Clefs Pour Apple //c, Pg 104 - 105
|
||||
0478 A2C.ROMSTATE
|
||||
047B A2C.OLDCH
|
||||
04F8 A2C.TEMP1
|
||||
04FB A2C.VMODE
|
||||
0578 A2C.TEMPA
|
||||
057B A2C.OURCH
|
||||
; Applesoft SCREEN DEF9
|
||||
; ??? SCREEN 05B8
|
||||
05B8 UKNOWN.SCREEN
|
||||
05FB A2C.OURCV
|
||||
; 067B A2C.VFACTV
|
||||
067B A2C.CHAR
|
||||
06FB A2C.XCOORD
|
||||
; Applesoft TEMP1 93
|
||||
; ??? TEMP1 77B
|
||||
0778 A2C.DEVN0
|
||||
077B A2C.NXTCUR
|
||||
07FB A2C.TEMP2
|
||||
|
||||
; Softswitches
|
||||
C000 KBD/CLR80STORE
|
||||
C001 SET80STORE
|
||||
C002 RDMAINRAM
|
||||
C003 RDCARDRAM
|
||||
C004 WRMAINRAM
|
||||
C005 WRCARDRAM
|
||||
C006 SETSLOTCXROM
|
||||
C007 SETINTCXROM
|
||||
C008 SETSTDZP
|
||||
C009 SETALTZP
|
||||
C00A SETINTC3ROM
|
||||
C00B SETSLOTC3ROM
|
||||
C00C CLR80COL
|
||||
C00D SET80COL
|
||||
C00E CLRALTCHAR
|
||||
C00F SETALTCHAR
|
||||
C010 KBDSTRB
|
||||
C011 RDLCBNK2
|
||||
C012 RDLCRAM
|
||||
C013 RDRAMRD
|
||||
C014 RDRAMWRT
|
||||
C015 RDCXROM
|
||||
C016 RDALTZP
|
||||
C017 RDC3ROM
|
||||
C018 RD80STORE
|
||||
C019 RDVBLBAR
|
||||
C01A RDTEXT
|
||||
C01B RDMIXED
|
||||
C01C RDPAGE2
|
||||
C01D RDHIRES
|
||||
C01E ALTCHARSET
|
||||
C01F RD80COL
|
||||
C020 TAPEOUT
|
||||
C030 SPKR
|
||||
C040 STROBE
|
||||
C050 TXTCLR
|
||||
C051 TXTSET
|
||||
C052 MIXCLR
|
||||
C053 MIXSET
|
||||
C054 LOWSCR
|
||||
C055 HISCR
|
||||
C056 LORES
|
||||
C057 HIRES
|
||||
C058 SETAN0
|
||||
C059 CLRAN0
|
||||
C05A SETAN1
|
||||
C05B CLRAN1
|
||||
C05C SETAN2
|
||||
C05D CLRAN2
|
||||
C05E SETAN3
|
||||
C05F CLRAN3
|
||||
C060 TAPEIN
|
||||
C061 BUTNO
|
||||
C062 BUTN1
|
||||
C063 BUTN2
|
||||
C064 PADDL0
|
||||
C065 PADDL1
|
||||
C066 PADDL2
|
||||
C067 PADDL3
|
||||
C070 PTRIG
|
||||
|
||||
; Slot-0: Language Card
|
||||
C080 LCRAMIN2
|
||||
C081 ROMIN2
|
||||
C082 LCROMIN2
|
||||
C083 LCBANK2
|
||||
C084 LCRAMIN2_
|
||||
C085 ROMIN2_
|
||||
C086 LCROMIN2_
|
||||
C087 LCBANK2_
|
||||
C088 LCRAMIN1
|
||||
C089 ROMIN1
|
||||
C08A LCROMIN1
|
||||
C08B LCBANK1
|
||||
C08C LCRAMIN1_
|
||||
C08D ROMIN1_
|
||||
C08E LCROMIN1_
|
||||
C08F LCBANK1_
|
||||
|
||||
; Slot-6: DiskII interface
|
||||
C0E0 DRV_P0_OFF
|
||||
C0E1 DRV_P0_ON
|
||||
C0E2 DRV_P1_OFF
|
||||
C0E3 DRV_P1_ON
|
||||
C0E4 DRV_P2_OFF
|
||||
C0E5 DRV_P2_ON
|
||||
C0E6 DRV_P3_OFF
|
||||
C0E7 DRV_P3_ON
|
||||
C0E8 DRV_OFF
|
||||
C0E9 DRV_ON
|
||||
C0EA DRV_SEL1
|
||||
C0EB DRV_SEL2
|
||||
C0EC DRV_SHIFT
|
||||
C0ED DRV_LOAD
|
||||
C0EE DRV_READ
|
||||
C0EF DRV_WRITE
|
||||
|
||||
; Firmware
|
||||
; Renamed due to ROM name collision
|
||||
; C8A0 NOWAIT
|
||||
; CB28 BELL2
|
||||
; C9D6 PREAD
|
||||
; C894 KBDWAIT
|
||||
; CABA BASCALC
|
||||
; CDFE VTAB
|
||||
; CE03 VTABZ
|
||||
; CB34 WAIT
|
||||
; CB35 WAIT2
|
||||
; CB36 WAIT3
|
||||
; C39D NXTA1
|
||||
; C376 MOVE
|
||||
C100 BFUNCPG
|
||||
C103 F.CLREOP
|
||||
C107 CLEOP1
|
||||
C119 F.HOME
|
||||
C123 F.SCROLL
|
||||
C129 SCRL1
|
||||
C13F SCRL2
|
||||
C148 SCRL3
|
||||
C14D GVTZ
|
||||
C14F GVTZ2
|
||||
C152 F.SETWND
|
||||
C160 F.CLREOLZ
|
||||
C165 B.SCROLL
|
||||
C168 B.CLREOL
|
||||
C16B B.CLREOLZ
|
||||
C170 B.CLREOP
|
||||
C173 B.SETWND
|
||||
C176 B.RESET
|
||||
C179 B.RDKEY
|
||||
C17C B.HOME
|
||||
C18A B.QUIT
|
||||
C195 F.QUIT
|
||||
C199 F8HOOK
|
||||
C19D NOTO
|
||||
C1A0 ISO
|
||||
C1A9 F.RDKEY
|
||||
C1B4 F.NOCUR
|
||||
C1B6 F.BASCALC
|
||||
C1BE B.ESCFIX
|
||||
C1C1 B.ESCFIX1
|
||||
C1C3 B.ESCFIX2
|
||||
C1CB C.ESCFIX3
|
||||
C1D0 F.BOUT
|
||||
C1D6 MNNDX
|
||||
C1E2 GOMINI
|
||||
C1E9 FIXPICK
|
||||
C1F2 F.CLREOL
|
||||
C1F4 X.CLREOLZ
|
||||
C201 X.CLREOL2
|
||||
C204 F.VTABZ
|
||||
C20A F.RETURN
|
||||
C20B F.RET2
|
||||
C210 F.RET1
|
||||
C213 DISPATCH
|
||||
C23C GETFUNC
|
||||
C244 F.TABLE
|
||||
C250 TABLEN
|
||||
C25C B.KEYIN
|
||||
C267 B.KEYIN1
|
||||
C26D NEW.CUR
|
||||
C276 NEW.CUR1
|
||||
C278 NEW.CUR2
|
||||
C27D WAITKEY1
|
||||
C28B WAITKEY4
|
||||
C2A0 B.SETWNDX
|
||||
C2AA SKPSHFT
|
||||
C2B0 B.RESETX
|
||||
C2C3 NODIAGS
|
||||
C2D1 BLAST
|
||||
C2E2 RESETRET
|
||||
C2ED GORETN1
|
||||
C2EE ESCI
|
||||
C2F2 B.RDKEYX
|
||||
C2FE ZSPAREC2
|
||||
; Aux-80 Card
|
||||
C300 BASICINT
|
||||
C305 BASICIN
|
||||
C307 BASICOUT
|
||||
C317 BASICENT
|
||||
C32C NOGETLN
|
||||
C344 JC8
|
||||
C347 JBASINIT
|
||||
C34A JPINIT
|
||||
C350 JPREAD
|
||||
C356 JPWRITE
|
||||
C35C JPSTAT
|
||||
C367 PIORDY
|
||||
C369 PSTERR
|
||||
C36B PNOTRDY
|
||||
C36D SETC8
|
||||
C376 MOVE.C376
|
||||
C38B MOVEC2M
|
||||
C391 MOVESTRT
|
||||
C393 MOVELOOP
|
||||
C39D NXTA1.C39D
|
||||
C3AB C01
|
||||
C3B6 C03
|
||||
C3BF MOVERET
|
||||
C3C3 XFER
|
||||
C3D6 XFERC2M
|
||||
C3DC XFERZP
|
||||
C3EC XFERAZP
|
||||
C3EF JMPDEST
|
||||
C3F4 IRQDONE
|
||||
C3FA IRQ
|
||||
C400 NEWIRQ
|
||||
C405 IRQINTCX
|
||||
C426 IRQ2
|
||||
C431 IRQ3
|
||||
C43B IRQ4
|
||||
C449 IRQ6
|
||||
C44C IRQ7
|
||||
C45E IRQ8
|
||||
C46D IRQ9
|
||||
C47C IRQFIX
|
||||
C489 IRQDN1
|
||||
C48B IRQDN2
|
||||
C493 IRQDN3
|
||||
C499 IRQDN4
|
||||
C4C1 IRQTBLE
|
||||
C4C8 AMOD1
|
||||
C4E5 AMOD2
|
||||
C4E6 AMOD4
|
||||
C4E7 AMOD3
|
||||
C4F5 AMOD5
|
||||
C4FA AMOD6
|
||||
C567 XHEADER
|
||||
C5AA WRITE2
|
||||
C5D1 XREAD
|
||||
; IIe Technical Reference Manual (1987), Page 317, $C3XX ROM
|
||||
C603 TSTZPG
|
||||
C607 ZP1
|
||||
C610 ZP2
|
||||
C623 ZP3
|
||||
C628 ZPERROR
|
||||
C62E TSTMEM
|
||||
C638 MEM1
|
||||
C63A MEM2
|
||||
C655 MEM3
|
||||
C657 MEM4
|
||||
C65C MEM5
|
||||
C667 MEM6
|
||||
C670 MEM7
|
||||
C688 MEM8
|
||||
C68A MEM9
|
||||
C68F MEMA
|
||||
C69E MEMB
|
||||
C6AD MEMC
|
||||
C6BE SWCHTST1
|
||||
C6CC MEMERROR
|
||||
C6CD BADBITS
|
||||
C6D7 BBITS1
|
||||
C6DB CLRSTS
|
||||
C6EB CLRS
|
||||
; HD Card
|
||||
C703 BADMAIN
|
||||
C70A BADPRIM
|
||||
C715 BBITS2
|
||||
C722 HANGX
|
||||
C724 BADSWTCH
|
||||
C726 BSWTCH1
|
||||
C72E BSWTCH2
|
||||
C734 HANGY
|
||||
C736 SWCHTST
|
||||
C738 SWTST1
|
||||
C73A SWTST2
|
||||
C745 SWTST3
|
||||
C74B CLICK
|
||||
C74F SWTST4
|
||||
C761 SWTST5
|
||||
C768 SWTST6
|
||||
C776 SWERR
|
||||
C77D BIGLOOP
|
||||
C781 BLP2
|
||||
C785 BLP3
|
||||
C794 BLP4
|
||||
C7A4 DQUIT
|
||||
C7A9 SUC2
|
||||
C7B4 NTBL
|
||||
C7B9 SWTBL0
|
||||
C7C9 SWTBL1
|
||||
C7D9 RSWTBL
|
||||
C7EA RMESS
|
||||
C7F0 SMESS
|
||||
C7F6 SUCCESS
|
||||
C7FF ZZZEND
|
||||
C803 BASICINIT
|
||||
C81E CLEARIT
|
||||
C82A C3HOOKS
|
||||
C832 C3IN
|
||||
C83B GETKEY
|
||||
C841 GETK2
|
||||
C850 CSETUP
|
||||
C85F CS2
|
||||
C86C CS3
|
||||
C870 BOUT
|
||||
C874 BIN
|
||||
C87C C8BASIC
|
||||
C87E BPRINT
|
||||
C894 KBDWAIT.C894
|
||||
C8A0 NOWAIT.C8A0
|
||||
C8AC BPNCTL
|
||||
C8BD CTLON
|
||||
C8C5 BIORET
|
||||
C8CF SETALL
|
||||
C8D4 GETREGS
|
||||
C8DC BINPUT
|
||||
C8E6 B.INPUT
|
||||
C906 NOTACR
|
||||
C91B ESCAPING
|
||||
C92B ESC2
|
||||
C935 ESC3
|
||||
C944 ESCSPEC
|
||||
C957 ESCSP1
|
||||
C95D ESCSP2
|
||||
C960 ESCSP3
|
||||
C963 ESCSP4
|
||||
C96B ESCCHAR
|
||||
C97C ESCTAB
|
||||
C98D STAUX
|
||||
C9A3 XSTAUX
|
||||
C9A4 ESCOUT
|
||||
C9B0 PINIT1.0
|
||||
C9B4 PINIT
|
||||
C9B6 PINIT2
|
||||
C9C0 PIGOOD
|
||||
C9D6 PREAD.C9D6
|
||||
C9EC PREADRET2
|
||||
C9F0 PWRITE
|
||||
CA0C PWR1
|
||||
CA1F DOBASL
|
||||
CA2F GETX
|
||||
CA3B GETY
|
||||
CA53 PCTL
|
||||
CA61 STARTXY
|
||||
CA6B PSETX
|
||||
CA71 DOMN
|
||||
CA7A MNNDX1
|
||||
CA7E MNNDX2
|
||||
CA85 MNNDX3
|
||||
CA89 TSTROMCRD
|
||||
CA90 TESTCARD
|
||||
CAB2 STAY2
|
||||
CAB7 STAY80
|
||||
CABA BASCALC.CABA
|
||||
CAC9 BSCLC2
|
||||
CAD2 CTLCHAR0
|
||||
CAD6 CTLCHAR
|
||||
CAF7 CTLCHARX
|
||||
CAFA CTLGO
|
||||
CAFD CTLGO0
|
||||
CB03 CTLRET
|
||||
CB07 CTLXFER
|
||||
CB0D X.CUR.ON
|
||||
CB14 SAVCUR
|
||||
CB17 CURON.X
|
||||
CB18 X.CUR.OFF
|
||||
CB21 X.BELL
|
||||
CB28 BELL2.CB28
|
||||
CB34 WAIT.CB34
|
||||
CB35 WAIT2.CB35
|
||||
CB36 WAIT3.CB36
|
||||
CB40 X.BS
|
||||
CB50 BSDONE
|
||||
CB51 X.CR
|
||||
CB5E X.CRRET
|
||||
CB5F X.EM
|
||||
CB6B X.FS
|
||||
CB78 X.FSRET
|
||||
CB79 X.US
|
||||
CB84 X.SO
|
||||
CB8B X.SO1
|
||||
CB8F X.SI
|
||||
CB96 X.SI1
|
||||
CB98 STUFFINV
|
||||
CB9D X.USRET
|
||||
CB9E CTLADL
|
||||
CBB9 CTLADH
|
||||
CBD4 SCROLLDN
|
||||
CBD8 X.LF
|
||||
CBE6 X.LF2
|
||||
CBEB SCROLLUP
|
||||
CBED SCROLLIT
|
||||
CC08 CHKRT
|
||||
CC11 GETST
|
||||
CC16 GETST1
|
||||
CC1F SETDBAS
|
||||
CC23 SCRLIN
|
||||
CC35 SETSRC
|
||||
CC45 SCRLEVEN
|
||||
CC4C SCRLEFT
|
||||
CC52 SKPLFT
|
||||
CC59 SCRLODD
|
||||
CC5D SKPRT
|
||||
CC62 SCRLDN
|
||||
CC67 SCRLL3
|
||||
CC74 X.VT
|
||||
CC7C X.VTLOOP
|
||||
CC82 X.VTNEXT
|
||||
CC90 X.FF
|
||||
CC96 X.SUB
|
||||
CC9A X.GS
|
||||
CC9D X.GSEOLZ
|
||||
CCA8 CLR40
|
||||
CCB0 CLRHALF
|
||||
CCBD CLR80
|
||||
CCD2 CLR0
|
||||
CCD5 CLR2
|
||||
CCE0 CLR1
|
||||
CCE6 CLR3
|
||||
CCEA X.DC1
|
||||
CCEF X.DC1A
|
||||
CCFC X.DC2
|
||||
CD09 X.DC1B
|
||||
CD1A X.DC1C
|
||||
CD29 DO80
|
||||
CD2E DO40
|
||||
CD31 SETTOP
|
||||
CD3A DO40A
|
||||
CD3D MOUSEOFF
|
||||
CD44 MOUSEON
|
||||
CD49 SMOUSE
|
||||
CD4D X.NAK
|
||||
CD5B SETKEYIN
|
||||
CD64 SETCOUT1
|
||||
CD6C SKRTS
|
||||
CD6D FULL40
|
||||
CD71 FULL80
|
||||
CD73 SAVWDTH
|
||||
CD80 QUIT
|
||||
CD88 QUIT2
|
||||
CD91 SCRN84
|
||||
CD98 SCR1
|
||||
CD9E SCR2
|
||||
CDA7 SCR3
|
||||
CDBB SCR4
|
||||
CDC4 SCRN48
|
||||
CDC8 SCR5
|
||||
CDD1 SCR6
|
||||
CDD3 SCR8
|
||||
CDDD SCR7
|
||||
CDF5 SCR9
|
||||
CDF8 SCRNRET
|
||||
; Applesoft VTAB F256
|
||||
; ROM/Monitor n/a
|
||||
; Firmware??? VTAB CDFE
|
||||
CDFE VTAB.CDFE
|
||||
; Applesoft n/a
|
||||
; Firmware??? VTABZ CE03
|
||||
; ROM/Monitor VTABZ FC24
|
||||
CE03 VTABZ.CE03
|
||||
CE0E VTAB40
|
||||
CE13 VTABX
|
||||
CE14 UPSHFT
|
||||
CE1E UPSHFT2
|
||||
CE1F PASINV
|
||||
CE26 INVERT
|
||||
CE37 INVX
|
||||
CE38 STORCHAR
|
||||
CE3F STOR2
|
||||
CE43 SEV
|
||||
CE44 PICK
|
||||
CE5A PICK1
|
||||
CE5D PICK2
|
||||
CE64 PICK3
|
||||
CE6F PICK4
|
||||
CE70 STORIT
|
||||
CE8B STORE1
|
||||
CEA0 STORE2
|
||||
CEA3 STORIT2
|
||||
CEAC HEX60
|
||||
CEAD STOR40
|
||||
CEB1 ESCON
|
||||
CEC4 ESCOFF
|
||||
CECD ESCRET
|
||||
CED4 PSETUP
|
||||
CED7 IS80
|
||||
CEE4 PSETUPRET
|
||||
CEF4 COPYROM
|
||||
CF09 BANK2
|
||||
CF17 WRTENBL
|
||||
CF25 COPYROM2
|
||||
CF36 ROMOK
|
||||
CF3A REL
|
||||
CF46 REL1
|
||||
CF50 REL2
|
||||
; Applesoft GOERR F206
|
||||
; Firmware??? GOERR CF53
|
||||
CF53 GOERR.CF53
|
||||
CF55 MOVINST
|
||||
CF57 MOV1
|
||||
CF6B GETOP
|
||||
CF8B NXTOP
|
||||
CF95 MINIERR
|
||||
CF97 ERR2
|
||||
CF9C DOINST
|
||||
CFAB GETI1
|
||||
CFB0 GOERR2
|
||||
CFB8 DOLIN
|
||||
CFBC NXTCH
|
||||
CFCA NXTMN
|
||||
CFED AMOD7
|
||||
CFFC AMOD8
|
||||
CFFF CLRROM
|
||||
E000 BASIC
|
||||
|
||||
; ROM/Monitor
|
||||
; Apple ][ Reference Manual - Autostart ROM Listing
|
||||
E003 BASIC2
|
||||
; Applesoft PLOT F800
|
||||
; ROM/Monitor PLOT F225
|
||||
F800 PLOT
|
||||
F80C RTMASK
|
||||
F80E PLOT1
|
||||
F819 HLINE
|
||||
F81C HLINE1
|
||||
F826 VLINEZ
|
||||
F828 VLINE
|
||||
F831 RTS1
|
||||
F832 CLRSCR
|
||||
F836 CLRTOP
|
||||
F838 CLRSC2
|
||||
F847 GBASCALC
|
||||
F856 GBCALC
|
||||
F85F NXTCOL
|
||||
F864 SETCOL
|
||||
F871 SCRN
|
||||
F879 SCRN2
|
||||
F87F RTMASKZ
|
||||
F882 INSDS1
|
||||
F88E INSDS2
|
||||
F89B IEVEN
|
||||
F8A5 ERR
|
||||
F8A9 GETFMT
|
||||
F8B7 TSTROM
|
||||
F8BA TSTROM0
|
||||
F8BC TSTROM1
|
||||
F8CB XTST
|
||||
F8D0 INSTDSP
|
||||
F8D4 PRNTOP
|
||||
F8DB PRNTBL
|
||||
F8F5 PRMN1
|
||||
F8F9 PRMN2
|
||||
F910 PRADR1
|
||||
F914 PRADR2
|
||||
F926 PRADR3
|
||||
F92A PRADR4
|
||||
F930 PRADR5
|
||||
F938 RELADR
|
||||
F940 PRNTYX
|
||||
F941 PRNTAX
|
||||
F944 PRNTX
|
||||
F948 PRBLNK
|
||||
F94A PRBL2
|
||||
F94C PRBL3
|
||||
F953 PCADJ
|
||||
F954 PCADJ2
|
||||
F956 PCADJ3
|
||||
F95C PCADJ4
|
||||
F961 RTS2
|
||||
F962 FMT1
|
||||
F9A6 FMT2
|
||||
F9B4 CHAR1
|
||||
F9BA CHAR2
|
||||
F9C0 MNEML
|
||||
FA40 OLDIRQ
|
||||
FA47 NEWBREAK
|
||||
FA4C BREAK
|
||||
FA59 OLDBRK
|
||||
FA62 RESET
|
||||
FA6F INITAN
|
||||
FA81 NEWMON
|
||||
FA9B FIXSEV
|
||||
FAA3 NOFIX
|
||||
FAA6 PWRUP
|
||||
FAA9 SETPG3
|
||||
FAAB SETPLP
|
||||
FABA SLOOP
|
||||
FAC7 NXTBYT
|
||||
FAD7 REGDSP
|
||||
FADA RGDSP1
|
||||
FAE4 RDSP1
|
||||
FAFD PWRCON
|
||||
FB02 DISKID
|
||||
FB11 XLTBL
|
||||
FB19 RTBL
|
||||
FB1E PREAD
|
||||
FB25 PREAD2
|
||||
FB2E RTS2D
|
||||
FB2F INIT
|
||||
FB39 SETTXT
|
||||
FB40 SETGR
|
||||
FB4B SETWND
|
||||
FB5B TABV
|
||||
FB60 APPLEII
|
||||
FB65 STITLE
|
||||
FB6F SETPWRC
|
||||
FB78 VIDWAIT
|
||||
FB88 KBDWAIT
|
||||
FB94 NOWAIT
|
||||
FB97 ESCOLD
|
||||
FB9B ESCNOW
|
||||
FBA5 ESCNEW
|
||||
FBB3 VERSION
|
||||
FBB4 GOTOCX
|
||||
FBC0 ZIDBYTE
|
||||
FBC1 BASCALC
|
||||
FBD0 BASCLC2
|
||||
FBD9 BELL1
|
||||
FBE4 BELL2
|
||||
FBEF RTS2B
|
||||
FBF0 STORADV
|
||||
FBF4 ADVANCE
|
||||
FBFC RTS3
|
||||
FBFD VIDOUT
|
||||
FC10 BS
|
||||
FC1A UP
|
||||
; Applesoft VTAB F256
|
||||
; Firmware??? VTAB CDFE
|
||||
; ROM/Monitor VTAB FC22
|
||||
FC22 VTAB
|
||||
; Firmware??? VTABZ CE03
|
||||
; ROM/Monitor VTABZ FC24
|
||||
FC24 VTABZ
|
||||
FC29 GOTOCX1
|
||||
FC2C ESC1
|
||||
FC42 CLREOP
|
||||
FC46 NEWVW
|
||||
FC4F NEWVW1
|
||||
FC58 HOME
|
||||
FC5A GOTOCX3
|
||||
FC62 CR
|
||||
FC66 LF
|
||||
FC70 SCROLL
|
||||
FC74 IRQUSER
|
||||
FC7A IRQDONE2
|
||||
FC8F IRQNOSLT
|
||||
FC95 DOCOUT1
|
||||
FC99 DOCOUT2
|
||||
FC9C CLREOL
|
||||
FC9E CLREOLZ
|
||||
; Applesoft WAIT E784
|
||||
; ROM/Monitor WAIT FCA8
|
||||
FCA8 WAIT
|
||||
FCA9 WAIT2
|
||||
FCAA WAIT3
|
||||
FCB4 NXTA4
|
||||
FCBA NXTA1
|
||||
FCC8 RTS4B
|
||||
FCC9 HEADR
|
||||
FCD2 ERR3
|
||||
FCE3 DISLIN
|
||||
FCF0 GETINST1
|
||||
FCFD UPMON
|
||||
FD0B UPMON2
|
||||
FD0C RDKEY2
|
||||
FD10 FD10
|
||||
FD13 RDKEY0
|
||||
FD18 RDKEY1
|
||||
FD1B KEYIN
|
||||
FD1D GOTOCX2
|
||||
FD21 RDESC
|
||||
FD28 NEWRDKEY
|
||||
FD2F ESC
|
||||
FD35 RDCHAR
|
||||
FD3D PICKFIX
|
||||
FD47 NOTCR
|
||||
FD5F NOTCR1
|
||||
FD62 CANCEL
|
||||
FD67 GETLNZ
|
||||
FD6A GETLN
|
||||
FD71 BCKSPC
|
||||
FD75 NXTCHAR
|
||||
FD84 ADDINP
|
||||
FD8E CROUT
|
||||
FD92 PRA1
|
||||
FD96 PRYX2
|
||||
FDA3 XAM8
|
||||
FDAD MO
|
||||
FDB3 XAM
|
||||
FDB6 DATAOUT
|
||||
FDC5 RTS4C
|
||||
FDC6 XAMPM
|
||||
FDD1 ADD
|
||||
FDDA PRBYTE
|
||||
FDE3 PRHEX
|
||||
FDE5 PRHEXZ
|
||||
FDED COUT
|
||||
FDF6 COUTZ
|
||||
FDF7 COUTZ1
|
||||
FE00 BL1
|
||||
FE04 BLANK
|
||||
FE0B STOR
|
||||
FE17 RTS5
|
||||
FE18 SETMODE
|
||||
FE1D SETMDZ
|
||||
FE20 LT
|
||||
FE22 LT2
|
||||
FE2C MOVE
|
||||
FE36 VFY
|
||||
FE58 VFYOK
|
||||
; Applesoft LIST D6A5
|
||||
; ROM/Monitor LIST FE5E
|
||||
FE5E LIST
|
||||
FE63 LIST2
|
||||
FE75 A1PC
|
||||
FE78 A1PCLP
|
||||
FE7F A1PCRTS
|
||||
FE80 SETINV
|
||||
FE84 SETNORM
|
||||
FE86 SETIFLG
|
||||
FE89 SETKBD
|
||||
FE8B INPORT
|
||||
; Applesoft INPRT ED19
|
||||
; ROM/Monitor INPRT FE8D
|
||||
FE8D INPRT
|
||||
FE93 SETVID
|
||||
FE95 OUTPORT
|
||||
FE97 OUTPRT
|
||||
FE9B IOPRT
|
||||
FEA5 IOPRT1
|
||||
FEAB GOTOCX4
|
||||
FEAF CKSUMFIX
|
||||
FEB0 XBASIC
|
||||
FEB3 BASCONT
|
||||
FEB6 GO
|
||||
FEBF REGZ
|
||||
; Applesoft TRACE F26D
|
||||
; ROM/Monitor TRACE FEC2
|
||||
FEC2 TRACE
|
||||
FEC4 STEPZ
|
||||
FEC5 RETCX1
|
||||
FEC8 RETCX2
|
||||
; Applesoft USR 0A
|
||||
; ROM/Monitor USR FECA
|
||||
FECA USR
|
||||
FECD WRITE
|
||||
FECF WRT2
|
||||
FED7 SEARCH
|
||||
FEE1 SRCH1
|
||||
FEEB SRCH2
|
||||
FEF1 MINI
|
||||
FEF6 CRMON
|
||||
; Applesoft READ DBE2
|
||||
; ROM/Monitor READ FEFD
|
||||
FEFD READ
|
||||
FF03 RD2
|
||||
FF0A TITLE
|
||||
FF13 NNBL
|
||||
FF1B LOOKASC
|
||||
FF2D PRERR
|
||||
FF3A BELL
|
||||
; Applesoft RESTORE D849
|
||||
; ROM/Monitor RESTORE FF3F
|
||||
FF3F RESTORE
|
||||
FF44 RESTR1
|
||||
FF49 RTS6
|
||||
; Applesoft SAVE D8B0
|
||||
; ROM/Monitor SAVE FF4A
|
||||
FF4A SAVE
|
||||
FF4C SAV1
|
||||
FF59 OLDRST
|
||||
FF65 MON
|
||||
FF69 MONZ
|
||||
FF73 NXTITM
|
||||
FF7A CHRSRCH
|
||||
FF8A DIG
|
||||
FF90 NXTBIT
|
||||
FF98 NXTBAS
|
||||
FFA2 NXTBS2
|
||||
FFA7 GETNUM
|
||||
FFAD NXTCHR
|
||||
FFBE TOSUB
|
||||
FFC7 ZMODE
|
||||
FFCC CHRTBL
|
||||
FFE3 SUBTBL
|
||||
|
||||
; Removed - can't find Applesoft/ROM/DOS33/PRODOS reference
|
||||
; Probably because is a typo of C05F
|
||||
; C0F5 CLRAN3
|
||||
|
||||
; Removed - Moved to Applesoft Symbol Table
|
||||
; 0095 PICK
|
||||
; Reference: MAKE.NEW.VARIABLE BLTU@$D393 & TAPEPNT@$F7BC
|
||||
; 0094 HIGHDS
|
||||
; 0095 HIGHDSH
|
||||
|
||||
; Applesoft n/a
|
||||
; DOS3.3 MODE 04FB
|
||||
; ROM/Monitor n/a
|
||||
; Reference: Apple Assembly Line Volume 3 -- Issue 10
|
||||
04FB DOS33.MODE
|
||||
|
||||
; Text Page 1 Holes
|
||||
; Text Screen Hole 478 - 47F
|
||||
; Text Screen Hole 4F8 - 4FF
|
||||
; Text Screen Hole 578 - 57F
|
||||
; Text Screen Hole 5F8 - 5FF
|
||||
; Text Screen Hole 678 - 67F
|
||||
; Text Screen Hole 6F8 - 4FF
|
||||
; Text Screen Hole 778 - 77F
|
||||
; Text Screen Hole 7F8 - 7FF
|
||||
0478 TEXT.HOLE.1
|
||||
04F8 TEXT.HOLE.2
|
||||
0578 TEXT.HOLE.3
|
||||
05F8 TEXT.HOLE.4
|
||||
0678 TEXT.HOLE.5
|
||||
06F8 TEXT.HOLE.6
|
||||
0778 TEXT.HOLE.7
|
||||
07F8 TEXT.HOLE.8
|
||||
|
||||
; Reference: Videx Videoterm 80 Column Display
|
||||
;0478 TEXT.HOLE.1 VIDEX.EASEL
|
||||
;04F8 TEXT.HOLE.2 VIDEX.BASEM
|
||||
;0578 TEXT.HOLE.3 VIDEX.CHORZ
|
||||
;05F8 TEXT.HOLE.4 VIDEX.CVERT
|
||||
;0678 TEXT.HOLE.5 VIDEX.BYTE
|
||||
;06F8 TEXT.HOLE.6 VIDEX.START
|
||||
;0778 TEXT.HOLE.7 VIDEX.POFF
|
||||
;07F8 TEXT.HOLE.8
|
|
@ -1,18 +0,0 @@
|
|||
[Version]
|
||||
signature="$CHICAGO$"
|
||||
|
||||
[DefaultInstall]
|
||||
DelReg=RegChange
|
||||
|
||||
[RunIt]
|
||||
DelReg=RegChange
|
||||
|
||||
[RegChange]
|
||||
HKCR,.do
|
||||
HKCR,.dsk
|
||||
HKCR,.nib
|
||||
HKCR,.po
|
||||
HKCR,.woz
|
||||
HKCR,DiskImage
|
||||
HKCU,Software\AppleWin
|
||||
HKLM,Software\AppleWin
|
|
@ -1,340 +0,0 @@
|
|||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 2, June 1991
|
||||
|
||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||
51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
License is intended to guarantee your freedom to share and change free
|
||||
software--to make sure the software is free for all its users. This
|
||||
General Public License applies to most of the Free Software
|
||||
Foundation's software and to any other program whose authors commit to
|
||||
using it. (Some other Free Software Foundation software is covered by
|
||||
the GNU Library General Public License instead.) You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
this service if you wish), that you receive source code or can get it
|
||||
if you want it, that you can change the software or use pieces of it
|
||||
in new free programs; and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
anyone to deny you these rights or to ask you to surrender the rights.
|
||||
These restrictions translate to certain responsibilities for you if you
|
||||
distribute copies of the software, or if you modify it.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must give the recipients all the rights that
|
||||
you have. You must make sure that they, too, receive or can get the
|
||||
source code. And you must show them these terms so they know their
|
||||
rights.
|
||||
|
||||
We protect your rights with two steps: (1) copyright the software, and
|
||||
(2) offer you this license which gives you legal permission to copy,
|
||||
distribute and/or modify the software.
|
||||
|
||||
Also, for each author's protection and ours, we want to make certain
|
||||
that everyone understands that there is no warranty for this free
|
||||
software. If the software is modified by someone else and passed on, we
|
||||
want its recipients to know that what they have is not the original, so
|
||||
that any problems introduced by others will not reflect on the original
|
||||
authors' reputations.
|
||||
|
||||
Finally, any free program is threatened constantly by software
|
||||
patents. We wish to avoid the danger that redistributors of a free
|
||||
program will individually obtain patent licenses, in effect making the
|
||||
program proprietary. To prevent this, we have made it clear that any
|
||||
patent must be licensed for everyone's free use or not licensed at all.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License applies to any program or other work which contains
|
||||
a notice placed by the copyright holder saying it may be distributed
|
||||
under the terms of this General Public License. The "Program", below,
|
||||
refers to any such program or work, and a "work based on the Program"
|
||||
means either the Program or any derivative work under copyright law:
|
||||
that is to say, a work containing the Program or a portion of it,
|
||||
either verbatim or with modifications and/or translated into another
|
||||
language. (Hereinafter, translation is included without limitation in
|
||||
the term "modification".) Each licensee is addressed as "you".
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running the Program is not restricted, and the output from the Program
|
||||
is covered only if its contents constitute a work based on the
|
||||
Program (independent of having been made by running the Program).
|
||||
Whether that is true depends on what the Program does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Program's
|
||||
source code as you receive it, in any medium, provided that you
|
||||
conspicuously and appropriately publish on each copy an appropriate
|
||||
copyright notice and disclaimer of warranty; keep intact all the
|
||||
notices that refer to this License and to the absence of any warranty;
|
||||
and give any other recipients of the Program a copy of this License
|
||||
along with the Program.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy, and
|
||||
you may at your option offer warranty protection in exchange for a fee.
|
||||
|
||||
2. You may modify your copy or copies of the Program or any portion
|
||||
of it, thus forming a work based on the Program, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
a) You must cause the modified files to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
|
||||
b) You must cause any work that you distribute or publish, that in
|
||||
whole or in part contains or is derived from the Program or any
|
||||
part thereof, to be licensed as a whole at no charge to all third
|
||||
parties under the terms of this License.
|
||||
|
||||
c) If the modified program normally reads commands interactively
|
||||
when run, you must cause it, when started running for such
|
||||
interactive use in the most ordinary way, to print or display an
|
||||
announcement including an appropriate copyright notice and a
|
||||
notice that there is no warranty (or else, saying that you provide
|
||||
a warranty) and that users may redistribute the program under
|
||||
these conditions, and telling the user how to view a copy of this
|
||||
License. (Exception: if the Program itself is interactive but
|
||||
does not normally print such an announcement, your work based on
|
||||
the Program is not required to print an announcement.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Program,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Program, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Program.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Program
|
||||
with the Program (or with a work based on the Program) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
3. You may copy and distribute the Program (or a work based on it,
|
||||
under Section 2) in object code or executable form under the terms of
|
||||
Sections 1 and 2 above provided that you also do one of the following:
|
||||
|
||||
a) Accompany it with the complete corresponding machine-readable
|
||||
source code, which must be distributed under the terms of Sections
|
||||
1 and 2 above on a medium customarily used for software interchange; or,
|
||||
|
||||
b) Accompany it with a written offer, valid for at least three
|
||||
years, to give any third party, for a charge no more than your
|
||||
cost of physically performing source distribution, a complete
|
||||
machine-readable copy of the corresponding source code, to be
|
||||
distributed under the terms of Sections 1 and 2 above on a medium
|
||||
customarily used for software interchange; or,
|
||||
|
||||
c) Accompany it with the information you received as to the offer
|
||||
to distribute corresponding source code. (This alternative is
|
||||
allowed only for noncommercial distribution and only if you
|
||||
received the program in object code or executable form with such
|
||||
an offer, in accord with Subsection b above.)
|
||||
|
||||
The source code for a work means the preferred form of the work for
|
||||
making modifications to it. For an executable work, complete source
|
||||
code means all the source code for all modules it contains, plus any
|
||||
associated interface definition files, plus the scripts used to
|
||||
control compilation and installation of the executable. However, as a
|
||||
special exception, the source code distributed need not include
|
||||
anything that is normally distributed (in either source or binary
|
||||
form) with the major components (compiler, kernel, and so on) of the
|
||||
operating system on which the executable runs, unless that component
|
||||
itself accompanies the executable.
|
||||
|
||||
If distribution of executable or object code is made by offering
|
||||
access to copy from a designated place, then offering equivalent
|
||||
access to copy the source code from the same place counts as
|
||||
distribution of the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
4. You may not copy, modify, sublicense, or distribute the Program
|
||||
except as expressly provided under this License. Any attempt
|
||||
otherwise to copy, modify, sublicense or distribute the Program is
|
||||
void, and will automatically terminate your rights under this License.
|
||||
However, parties who have received copies, or rights, from you under
|
||||
this License will not have their licenses terminated so long as such
|
||||
parties remain in full compliance.
|
||||
|
||||
5. You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Program or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Program (or any work based on the
|
||||
Program), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Program or works based on it.
|
||||
|
||||
6. Each time you redistribute the Program (or any work based on the
|
||||
Program), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute or modify the Program subject to
|
||||
these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties to
|
||||
this License.
|
||||
|
||||
7. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Program at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Program by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Program.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under
|
||||
any particular circumstance, the balance of the section is intended to
|
||||
apply and the section as a whole is intended to apply in other
|
||||
circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system, which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
8. If the distribution and/or use of the Program is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Program under this License
|
||||
may add an explicit geographical distribution limitation excluding
|
||||
those countries, so that distribution is permitted only in or among
|
||||
countries not thus excluded. In such case, this License incorporates
|
||||
the limitation as if written in the body of this License.
|
||||
|
||||
9. The Free Software Foundation may publish revised and/or new versions
|
||||
of the General Public License from time to time. Such new versions will
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Program
|
||||
specifies a version number of this License which applies to it and "any
|
||||
later version", you have the option of following the terms and conditions
|
||||
either of that version or of any later version published by the Free
|
||||
Software Foundation. If the Program does not specify a version number of
|
||||
this License, you may choose any version ever published by the Free Software
|
||||
Foundation.
|
||||
|
||||
10. If you wish to incorporate parts of the Program into other free
|
||||
programs whose distribution conditions are different, write to the author
|
||||
to ask for permission. For software which is copyrighted by the Free
|
||||
Software Foundation, write to the Free Software Foundation; we sometimes
|
||||
make exceptions for this. Our decision will be guided by the two goals
|
||||
of preserving the free status of all derivatives of our free software and
|
||||
of promoting the sharing and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
|
||||
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
||||
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
||||
REPAIR OR CORRECTION.
|
||||
|
||||
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
||||
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program is interactive, make it output a short notice like this
|
||||
when it starts in an interactive mode:
|
||||
|
||||
Gnomovision version 69, Copyright (C) year name of author
|
||||
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||
parts of the General Public License. Of course, the commands you use may
|
||||
be called something other than `show w' and `show c'; they could even be
|
||||
mouse-clicks or menu items--whatever suits your program.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the program, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
||||
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1989
|
||||
Ty Coon, President of Vice
|
||||
|
||||
This General Public License does not permit incorporating your program into
|
||||
proprietary programs. If your program is a subroutine library, you may
|
||||
consider it more useful to permit linking proprietary applications with the
|
||||
library. If this is what you want to do, use the GNU Library General
|
||||
Public License instead of this License.
|
1498
bin/History.txt
1498
bin/History.txt
File diff suppressed because it is too large
Load diff
BIN
bin/MASTER.DSK
BIN
bin/MASTER.DSK
Binary file not shown.
|
@ -1,29 +0,0 @@
|
|||
@IF "%~1" == "" GOTO help
|
||||
@IF "%APPLEWIN_ROOT%" == "" GOTO help2
|
||||
|
||||
@MKDIR "%~1"
|
||||
@COPY /Y "%APPLEWIN_ROOT%\bin\A2_BASIC.SYM" "%~1"
|
||||
@COPY /Y "%APPLEWIN_ROOT%\bin\APPLE2E.SYM" "%~1"
|
||||
@COPY /Y "%APPLEWIN_ROOT%\bin\DELREG.INF" "%~1"
|
||||
@COPY /Y "%APPLEWIN_ROOT%\bin\DebuggerAutoRun.txt" "%~1"
|
||||
@COPY /Y "%APPLEWIN_ROOT%\bin\GNU General Public License.txt" "%~1"
|
||||
@COPY /Y "%APPLEWIN_ROOT%\bin\History.txt" "%~1"
|
||||
@COPY /Y "%APPLEWIN_ROOT%\bin\MASTER.DSK" "%~1"
|
||||
@COPY /Y "%APPLEWIN_ROOT%\docs\Debugger_Changelog.txt" "%~1"
|
||||
@COPY /Y "%APPLEWIN_ROOT%\help\AppleWin.chm" "%~1"
|
||||
@COPY /Y "%APPLEWIN_ROOT%\Release v141_xp\AppleWin.exe" "%~1"
|
||||
CD "%~1"
|
||||
"C:\Program Files (x86)\7-Zip\7z.exe" a ..\AppleWin"%~1".zip *
|
||||
"C:\Program Files (x86)\7-Zip\7z.exe" a ..\AppleWin"%~1"-PDB.zip "%APPLEWIN_ROOT%\Release v141_xp\AppleWin.pdb"
|
||||
CD ..
|
||||
@GOTO end
|
||||
|
||||
:help
|
||||
@ECHO %0 "<new version>"
|
||||
@ECHO EG: %0 1.29.8.0
|
||||
@GOTO end
|
||||
|
||||
:help2
|
||||
@ECHO APPLEWIN_ROOT env variable is not defined
|
||||
|
||||
:end
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,161 +0,0 @@
|
|||
Coding Conventions for AppleWin
|
||||
===============================
|
||||
|
||||
History:
|
||||
v4 - 05-Mar-2022 (TC)
|
||||
. #1050: Added info about Platform Toolset v141_xp
|
||||
. Use of C++11/14/17
|
||||
. Use StrFormat() instead of sprintf() etc.
|
||||
v3 - 14-Nov-2020 (TC)
|
||||
. #868: Reduced Hungarian notation
|
||||
v2 - 16-Feb-2006 (TC)
|
||||
. Updated after discussion with M.Pohoreski
|
||||
v1 - 04-Feb-2006 (TC)
|
||||
. First draft
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Introduction:
|
||||
-------------
|
||||
|
||||
This doc defines a very simple set of coding guidelines to be used for AppleWin.
|
||||
This ensures consistency & readability throughout the project, when worked on
|
||||
by multiple developers.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
1) Project files:
|
||||
|
||||
1.1: Each module to have corresponding header
|
||||
EG. Debug.cpp has a corresponding Debug.h
|
||||
This is for shared vars, enums, structs, classes, etc.
|
||||
|
||||
1.2: AppleWin.h to only be used as per 1.1
|
||||
|
||||
1.3: Common.h to be used for any common definitions
|
||||
EG. const/enum/struct
|
||||
Obviously not for global funcs or vars.
|
||||
|
||||
1.4: At the start of each header file it must contain: #pragma once
|
||||
|
||||
1.5: Each module (.cpp) to include stdafx.h, and then immediately after include
|
||||
the header file for that module.
|
||||
EG. For Debug.cpp:
|
||||
#include "stdafx.h"
|
||||
#include "Debug.h"
|
||||
|
||||
This ensures that this header file can be included in any order in another module,
|
||||
and therefore by extension all header files can be included in any order.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
2) Coding Style:
|
||||
|
||||
As a general rule and for consistency, adopt the coding convention/style of any module (or function) you are modifying.
|
||||
|
||||
2.1: Naming
|
||||
For functions use upper camel case.
|
||||
|
||||
For variables use lower camel case.
|
||||
|
||||
And only if applicable, the following simplified prefix (Hungarian) style can be used:
|
||||
|
||||
Prefixes:
|
||||
g_ : global
|
||||
m_ : member
|
||||
p : pointer
|
||||
|
||||
Tags:
|
||||
_e : named enum definitions
|
||||
_t : struct/typedef
|
||||
|
||||
Also see: "Appendix: Legacy Hungarian notation"
|
||||
|
||||
EG:
|
||||
enum MODE_e {MODE1, MODE2, MODE2};
|
||||
MODE_e mode;
|
||||
|
||||
struct PAIR_t
|
||||
{
|
||||
UINT a;
|
||||
UINT b;
|
||||
};
|
||||
|
||||
Simple loop counters (i,j,k) don't need to adhere to this style.
|
||||
|
||||
Naming for parameters that are being modified (eg. OUT):
|
||||
It is recommended (but not mandatory) to use a suffix of OUT or '_', eg:
|
||||
bool Find(int* pFoundOUT);
|
||||
bool Find(int* pFound_);
|
||||
|
||||
|
||||
2.2: Matching braces
|
||||
These should be have same indentation, unless the braces fit neatly on one line.
|
||||
EG:
|
||||
for (int i=0; i<10; i++)
|
||||
{
|
||||
// Some code
|
||||
}
|
||||
|
||||
2.3: Scope of module vars/funcs
|
||||
If module vars/funcs aren't wrapped in a class, then declare as static if not global.
|
||||
|
||||
2.4: const/enum favoured over #define
|
||||
Try to use const/enum instead of #define
|
||||
|
||||
2.4: Use of bool over BOOL
|
||||
Always use bool instead of BOOL
|
||||
|
||||
2.5: File header
|
||||
GPL header, followed by description of module & author.
|
||||
|
||||
2.6: Indentation
|
||||
Tabs favoured over spaces.
|
||||
|
||||
2.7: Expression to be well spaced and parenthesised
|
||||
It is recommended (but not mandatory):
|
||||
. to have/use explicit parenthesis
|
||||
. to have spaces between operators
|
||||
|
||||
Eg:
|
||||
. Prefer: z = ((a + b) + 1) instead of: z=((a+b)+1)
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
3) Use of sprintf() etc.
|
||||
|
||||
Do not use sprintf(), StringCbPrintf(), wsprintf(), etc. - instead use StrFormat().
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
4) Use of C++
|
||||
|
||||
VS2019's Platform Toolset "Visual Studio 2017 - Windows XP(v141_xp)" is used for building releases.
|
||||
This is VS2017 v15.0, which includes support for C++11, C++14 and some C++17 core language support[1].
|
||||
|
||||
[1] https://docs.microsoft.com/en-us/cpp/overview/visual-cpp-language-conformance?view=msvc-170
|
||||
|
||||
4.1: Type deduction (including auto)
|
||||
|
||||
Use type deduction only if it makes the code clearer to readers who aren't familiar with the project,
|
||||
or if it makes the code safer. Do not use it merely to avoid the inconvenience of writing an explicit type.
|
||||
(Ref: https://google.github.io/styleguide/cppguide.html#Type_deduction)
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Appendix: Legacy Hungarian notation
|
||||
|
||||
dw : DWORD
|
||||
sz : string (null-terminated)
|
||||
a : array
|
||||
b : bool
|
||||
e : enum variable
|
||||
h : handle
|
||||
i : iterator (eg. UINT, STL-iterator)
|
||||
m : STL map
|
||||
n : int
|
||||
r : reference
|
||||
s : string
|
||||
sg_p : singleton
|
||||
u : unsigned int
|
||||
v : STL vector
|
|
@ -1,164 +0,0 @@
|
|||
AppleWin behaviour: (ddial.dsk)
|
||||
- 1.10.4 : Counts up immediately at correct rate (but no "login" msg)
|
||||
- 1.12.6 : Counts up immediately at correct rate (but no "login" msg)
|
||||
- 1.12.9.1 : Sticks at 2s, then starts counting slowly after ~30s (but no "login" msg)
|
||||
- 1.14.2 : Very fast counting immediately
|
||||
|
||||
NB:
|
||||
. "Login" msg output ~33s/34s
|
||||
. After option-1 is loaded, then it writes to some regs in slot-1 ($C0An), but no reads.
|
||||
|
||||
=======================================
|
||||
|
||||
$38EB:
|
||||
LDA $28 ; [$28] = #$00
|
||||
BMI .SKIP_UPDATE_TIME ; $38FF
|
||||
|
||||
LDA $F4 ; [$F8] = #$FF
|
||||
BNE $38F8
|
||||
|
||||
LDA #$80+' '
|
||||
STA SEC_HI-1
|
||||
|
||||
$38F8:
|
||||
LDA #$84
|
||||
STA $28
|
||||
|
||||
JSR UPDATE_TIME
|
||||
|
||||
.SKIP_UPDATE_TIME:
|
||||
JSR $7FD3
|
||||
JSR $4753
|
||||
JSR CHECK_VBL
|
||||
|
||||
;...
|
||||
|
||||
=======================================
|
||||
|
||||
$395F:
|
||||
LDA $F4
|
||||
CMP #$01
|
||||
BCC $3979
|
||||
|
||||
LDA TAPEIN
|
||||
TAY
|
||||
$3969:
|
||||
EOR #$00 ; Default?
|
||||
BPL $3979
|
||||
|
||||
; State change on TAPEIN
|
||||
STY $3969+1
|
||||
LDA #$0A
|
||||
STA $F4
|
||||
STA $28
|
||||
LDA TAPEOUT
|
||||
|
||||
$3979:
|
||||
JMP $28B4
|
||||
|
||||
=======================================
|
||||
|
||||
; Func entrypoint
|
||||
UPDATE_TIME: ; $5205
|
||||
LDX $FF ; [$FF] = #$FF
|
||||
BEQ $5220
|
||||
BPL $520D
|
||||
LDX #$09
|
||||
$520D:
|
||||
DEX
|
||||
STX $FF
|
||||
BNE $5220
|
||||
|
||||
;...
|
||||
|
||||
$523D:
|
||||
LDX #$07
|
||||
|
||||
$523F:
|
||||
LDA $A0,X
|
||||
|
||||
;...
|
||||
|
||||
DEC $38,X
|
||||
BNE $5289
|
||||
LDA #$00
|
||||
STA $90,X
|
||||
|
||||
$5289:
|
||||
DEX
|
||||
BPL $523F
|
||||
|
||||
$528C:
|
||||
INC $4A7 ; SEC_LO
|
||||
LDA $4A7
|
||||
CMP #$80+'9'+1 ; #$BA
|
||||
BNE $530A
|
||||
|
||||
; $4A6 = SEC_HI
|
||||
|
||||
;...
|
||||
|
||||
$530A:
|
||||
RTS
|
||||
|
||||
=======================================
|
||||
|
||||
CHECK_VBL: ; $F822
|
||||
|
||||
LDA RDVBLBAR
|
||||
$F825: ; FRMCNT = $F826
|
||||
EOR #$3C ; (*SMC)
|
||||
BMI $F82A
|
||||
RTS
|
||||
|
||||
; VBl changed
|
||||
$F82A:
|
||||
LDA FRMCNT
|
||||
EOR #$80
|
||||
STA FRMCNT
|
||||
BMI $F86A
|
||||
|
||||
; 1 frame elasped
|
||||
INC $30 ; [$30] = #$FF
|
||||
AND $7F9F ; [$7F9F] = #$01
|
||||
BNE $F83D
|
||||
STA $F2 ; [$F2] = #$01
|
||||
$F83D:
|
||||
DEC FRMCNT
|
||||
BNE $F86A
|
||||
|
||||
; 1 sec elasped
|
||||
$F842: ; FRMCNT2 = $F843
|
||||
LDA #$3C ; (*SMC)
|
||||
STA FRMCNT
|
||||
DEC FRAMECNT3
|
||||
BNE $F861
|
||||
PHP
|
||||
CMP #60 ; #$3C
|
||||
BCS $F858 ; Branch if A >= 60
|
||||
INC FRMCNT2
|
||||
LDA #$79 ; 121 = 60*2+1
|
||||
BNE $F85D ; == BRA $F85D
|
||||
$F858:
|
||||
DEC FRMCNT2
|
||||
LDA #$0A
|
||||
$F85D:
|
||||
STA FRAMECNT3
|
||||
PLP
|
||||
|
||||
$F861:
|
||||
LDA $F4 ; [$F4] = #$FF
|
||||
BNE $F86B
|
||||
STA $28 ; [$28] = #$00
|
||||
LDA TAPEOUT
|
||||
RTS
|
||||
|
||||
$F86A:
|
||||
RTS
|
||||
|
||||
$F86B:
|
||||
DEC $F4
|
||||
RTS
|
||||
|
||||
FRAMECNT3: ; $F86E
|
||||
DCB $01
|
|
@ -1,867 +0,0 @@
|
|||
/*
|
||||
2.9.1.13 Added: CD now detects ".." to change to the previous directory and chops the trailing sub-directory from the current path.
|
||||
It worked before but would clutter up the current directory with a trailing "..\".
|
||||
2.9.1.12 Added: New commands HGR0, HGR3, HGR4, HGR5 to see pseudo pages $00, $60, $80, $A0 respectively.
|
||||
2.9.1.11 Fixed: Right justify signed decimal values.
|
||||
Example:
|
||||
U 300
|
||||
300:A9 80 A9 81 A9 FF A9 00 A9 01 A9 7E A9 7F
|
||||
Will display as:
|
||||
LDA #$80 #-128
|
||||
LDA #$81 #-127
|
||||
LDA #$FF #-1
|
||||
LDA #$00
|
||||
LDA #$01 #+1
|
||||
LDA #$7E #+126
|
||||
LDA #$7F #+127
|
||||
2.9.1.10 Fixed: Immedate #80 was not showing -128 for the signed decimal value.
|
||||
2.9.1.9 Fixed: Immediate #0 was showing '#' prefix but not showing zero for the signed decimal value. Changed to show the signed decimal value only if non zero.
|
||||
2.9.1.8 Changed: Disassembly window now lists symbol labels and symbol target address from User2 in orange.
|
||||
Example:
|
||||
U 300
|
||||
SYM @ = 303
|
||||
300: 20 03 03
|
||||
2.9.1.7 Added: Extended SYM command to auto-generate symbol names when reverse engineering. NOTE: These symbols will be placed in User2.
|
||||
Example:
|
||||
SYM @ = 800 // Alias for: SYM _0800 = 0800
|
||||
2.9.1.6 Added: Branch instructions now show target address.
|
||||
2.9.1.5 Added: Disassembly window now shows signed decimal values for immediate values.
|
||||
2.9.1.4 Changed: Show symbol warnings in Orange, and length of symbols in light blue.
|
||||
2.9.1.3 Added: DB commanoptionally supports =
|
||||
DB HGR = 2000:3FFF
|
||||
2.9.1.2 Fixed: Off by one end address when deleting DisasmData_t
|
||||
2.9.1.1 Added: X command now supports a range and will chop off the appropiate data sections.
|
||||
DB 2000:2005
|
||||
X 2002:2003
|
||||
Released post 1.30.7.0
|
||||
|
||||
2.9.1.0 Added: Bookmarks now have their own indicator (a number with a box around it) and replace the ":" separator. Updated Debug_Font.bmp
|
||||
|
||||
.18 Fixed: Resetting bookmarks wasn't setting the total bookmarks back to zero.
|
||||
.17 Fixed: If all bookmarks were used then setting a new one wouldn't update an existing one to the new address.
|
||||
.16 Fixed: Replacing an existing bookmark incorrectly increased the total bookmark count.
|
||||
.15 Cleanup: HELP CALC examples and See also.
|
||||
.14 Fixed: HELP JSR wasn't color-coding syntax.
|
||||
.13 Added: PROFILE LIST now shows how many clock cycles were executed.
|
||||
.12 GH-PR#480:
|
||||
GH#462: Default to Shift+Left Click to toggle disasm columns
|
||||
Use 'disasm click <n>' to reconfigure this
|
||||
GH#473: Fixed bug caused by Util_MemoryTextFile, Line 51 not zero-terminating buffer by invalidating it.
|
||||
GH#476: Fixed off-by-one bug wrapping in debugger console
|
||||
GH#483: Shift+Left mouse button to toggle 6502 Status flag bits
|
||||
GH#484: Some corrections to APPLE2E.SYM
|
||||
.11 Added:"Warning" for long symbols when symbol table is loaded
|
||||
.10 Changed: "Warning" of symbols that alias to "Info."
|
||||
.9 Continuation of 2.8.0.8: Fix overflowing disassembly pane for long symbols
|
||||
.8 Fixed: Inactive Language Card bank now grayed out, main memory no longer double inverse.
|
||||
.7 Fixed: Memory softswitches are now in chronological order, and their background is a dark grey
|
||||
.6 Added: Read/Write for Main/Aux memory now shown
|
||||
.5 Added: Support for RAMWORKS in the Debugger Language Card Status
|
||||
.4 Added: Language Card Status now displayed
|
||||
.3 Cleanup drawing of soft switches
|
||||
.2 Fix crash when NTSC save/load total path length is > console width (80 chars)
|
||||
.1 Fixed: Implemented missing debugger "CD" command
|
||||
2.9.0.0 Added: ntsc save [filename], ntsc load [filename], to save/load the NTSC palette.
|
||||
Default filename is "AppleWinNTSC4096x4@32.data"
|
||||
To load this file in GIMP: Open, Select File Type: "Raw image data", Raw image data (*.data), RGB Alpha, Width: 4096, Height: 4
|
||||
to save this file in GIMP: Open, Export To, Select File Type (By Extension) Raw image data, RGB Type: Standard (R,G,B)
|
||||
|
||||
.12 Fixed: [PVS-Studio] Fixed false positive of buffer overflow with MIP_RANDOM
|
||||
.11 Fixed: [PVS-Studio] Fixed missing call to sprintf() in ConfigSave_PrepareHeader()
|
||||
.10 Fixed: [PVS-Studio] Fixed no-op in _6502_GetStackReturnAddress()
|
||||
.9 Added: BLOAD now recognizes the extensions .hgr or .hgr2 to load to $2000, or $4000 respectfully
|
||||
.8 Fixed: Showing/hiding the address and/or opcodes will show long symbolic targets without overflowing into the register info pane Bug #227
|
||||
.7 Fixed: ASC #:# with string containing null byte wouldn't show rest of string
|
||||
.6 Added: Print-Screen when in debugger will copy the debugger window as text
|
||||
.5 Added: Print warnings about duplicate symbols when symbol tables are loaded
|
||||
.4 Fixed: Check for buffer overflow in CmdSymbolsInfo() if _CmdSymbolsInfoHeader() returns a very long string
|
||||
.3 Removed EXITBENCH from falsely being triggered with E.
|
||||
.2 Cleaned up error message for syminfo on invalid symbol table.
|
||||
.1 Fixed: Symbolic Targets > 20 chars no longer overflow into register window
|
||||
2.8.0.0 Released with AppleWin 1.25
|
||||
|
||||
2.7.0.#
|
||||
.36 Fixed: empty command was re-triggering previous command. Example: DW 6062, // test
|
||||
.35 Added: DW address -- round the length up to even number for convenience. Example: DW 6062 is equivalent to: DW 6062:6063
|
||||
.34 Fixed: Unified auto-defined name: B_, W_, T_ for byte, word, or text respectively
|
||||
.33 Fixed: ASC range -- auto-define symbol name: T_####
|
||||
.32 Fixed: DW range -- auto-define symbol name: W_####
|
||||
.31 Fixed: DB range -- auto-define symbol name B_####
|
||||
.30 Fixed: ASC overflowing sOpCodes in FormatOpcodeBytes()
|
||||
.29 Added: Help for DB and DW
|
||||
.28 Added: ASC so it disassemblies intertwined code and data correctly.
|
||||
Example:
|
||||
using Castle Wolfenstien.DSK
|
||||
BLOAD ^VOCAB
|
||||
ASC name1 17DA:17F5
|
||||
.27 Added: DB address now auto-defines the symbol D_####
|
||||
.26 Changed: DS to ASC because DS is used as "Define Space" assembler directive
|
||||
.25 Fixed : DW address so that odd address work.
|
||||
i.e. DW NEXT1 801 // AppleSoft Basic Line#1 Pointer to Next line
|
||||
.24 Added: TSAVE "filename" to save the text screen to file
|
||||
Default filename for 40 columns is: AppleWin_Text40.txt
|
||||
Default filename for 80 columns is: AppleWin_Text80.txt
|
||||
.23 Fixed: Hang with Memory Move when memory ends at FFFF, i.e. 2000<FFFE.FFFFM
|
||||
.22 Fixed: Hang with Memory Fill when memory ends at FFFF, i.e. F D000:FFFF 0
|
||||
.21 Added: Help for BRK
|
||||
.20 Moved: BRK and BRKOP now under HELP BREAKPOINTS
|
||||
.19 Added: Shift-F7 will run the emulator at normal speed but with debugger breakpoints active!
|
||||
.18 Added: Implemented BPIO -- currently is the same as BPM
|
||||
|
||||
2.7.0.17 Released with Applewin 1.20.0.0
|
||||
|
||||
.17 Fixed: HELP <category> wasn't displaying when category was one of: FLAGS, OUTPUT, WATCHES
|
||||
.16 Fixed: WL was displaying number of watches
|
||||
.15 Fixed: Memory Dump was over-writing watches.
|
||||
.14 Added: Debugger display flag to update soft switches. (Related to .12)
|
||||
.13 Fixed: Targets of PC instruction weren't displaying.
|
||||
.12 Fixed: Fixed scrolling to only update the diasm window.
|
||||
.11 Fixed: Breakpoints and Watches no longer disappear.
|
||||
.10 Added: Watches now show (dynamic) raw hex bytes
|
||||
Changed: Lowered watches down from 16 to 8.
|
||||
|
||||
.9 Fixed: Bookmarks weren't initialized to zero.
|
||||
.8 Added: New command PWD to display the current debugger directory.
|
||||
This is the directory used for scripts, loading/saving memory, and trace files.
|
||||
Currently the debugger uses the same directory that the last disk image was loaded from.
|
||||
It will have its own directory in a future version.
|
||||
.7 Fixed: Cleaned up display of soft-switches to show address.
|
||||
.6 Removed: Unused aliases.
|
||||
Reason: When a symbol table is specified with no args, the total # of symbols will be shown.
|
||||
SYMBOLS1, SYMBOLS2, SYM0, SYM1, SYM2, SYM3, SYM4, SYM5, SYM6
|
||||
.5 Fixed: Increased console output height so that you can view all the SYMBASIC * output.
|
||||
.4 Added: Two aliases for Dos 3.3 and Prodos symbol tables
|
||||
SYMDOS
|
||||
SYMPRO
|
||||
.3 Added: Two new symbol tables added Dos 3.3 and Prodos.
|
||||
SYMDOS33
|
||||
SYMPRODOS
|
||||
.2 Fixed: Fixed: Debug build of debugger force display all CPU info window wasn't calling DrawTargets()
|
||||
.1 Added: Soft Switches displayed in CPU info window
|
||||
|
||||
|
||||
2.7.0.0 Released with Applewin 1.19.1.0
|
||||
|
||||
|
||||
.33 Fixed: Define Address should be shown as Absolute mode, not Indirect Absolute mode.
|
||||
Example:
|
||||
U D000
|
||||
DA BASIC.FPTR D000:D081 // was showing as "da (END-1)" now shows as "da END-1"
|
||||
.32 Fixed: n'th Search results were being displayed in dec, yet parser takes hex numbers.
|
||||
Example:
|
||||
SH D000:FFFF A9 00
|
||||
U @A // used to show 10th search result as 10:DE60, now 0A:DE60
|
||||
.31 Fixed: Disasm list containing data address table was bailing on first possible match.
|
||||
Example:
|
||||
DA BASIC.FPTR D000:D080
|
||||
U D000 // was showing da STOP+1, instead of END-1
|
||||
.30 Added: DA now works! It is similar to DW except it does symbol lookups!
|
||||
(DW = Define Word. DA = Define Address)
|
||||
Example:
|
||||
U D000
|
||||
DA BASIC.FPTR D000:D080
|
||||
.29 Fixed: Pretty print DB2 DB4 DB8 without commas
|
||||
.28 Fixed: DB2 DB4 DB8 DW DW2 DW4 now work/display properly.
|
||||
DB (Define Byte) shows bytes in big endian order.
|
||||
DW (Define Word) shows addresses (2 bytes) in little endian order.
|
||||
Example:
|
||||
U D000
|
||||
DB2 REV.FPTR D000:D080
|
||||
X
|
||||
DW BASIC.FPT D000:D080
|
||||
X
|
||||
Or for those minimal types who hate wasting screen real estate
|
||||
DW4 COMPACT D000:D080
|
||||
X
|
||||
DB8 RA8 D000:D080
|
||||
X
|
||||
.27 Fixed: Don't do symbol look up for data bytes that don't request it. (Groundwork for Define Address)
|
||||
.26 Changed: Code portability. Slowly remove the LPCTSTR taint of Windowisms.
|
||||
.25 Fixed: DB DW custom data byte sizes weren't scrolling properly in the disasm view.
|
||||
Changed _6502_GetOpmodeOpbyte() to be aware of data bytes.
|
||||
.24 Changed: 2.6.2.24 Changed: Tone-downed the alt. background cyan for the DATA window. C2, C3 -> C1,C2
|
||||
.23 Changed: Increased number of lines for console output buffer (from 384 to 512)
|
||||
.22 Changed: Re-enabled magenta/purple for warnings (i.e. symbol table disabled)
|
||||
.21 Fixed: Missing GPL / copyright on some debugger files, updated year.
|
||||
.20 Changed: Output of found symbol more table friendly. Symbol table name displayed first.
|
||||
Example: SYM HOME // <SymbolTable>: $<Address> <Symbol>
|
||||
.19 Changed: Unified format & colors for summary of symbol tables and symbol table names.
|
||||
A symbol table that has been disabled will display in purple / magenta.
|
||||
Example: SYM HOME // 'Main' shown in yellow
|
||||
Example: SYMBASIC OFF
|
||||
Example: SYM
|
||||
.18 Fixed: Search Results: Total summary line unified colors.
|
||||
.17 Fixed: Search Results: The n'th result now using correct color (was command, now number decimal)
|
||||
.16 Fixed: Search Results: The hex literal prefix '$' for target address results now colorized properly.
|
||||
.15 Fixed: Search Results: Added space between results for better readability.
|
||||
.14 Fixed: Help description for Save/Load parameter help was swapped.
|
||||
Example: HELP SYMMAIN
|
||||
.13 Added: Can now enable/disable selected symbol table(s) !
|
||||
Example: SYMMAIN OFF
|
||||
Example: SYMBASIC OFF
|
||||
Note: If you need to search for symbols ON, OFF, CLEAR, use SYM. i.e. SYM ON.
|
||||
.12 Fixed: Following symbol tables were all hard-coded to act on SYMMAIN
|
||||
SYMBASIC
|
||||
SYMASM
|
||||
SYMUSER
|
||||
SYMUSER2
|
||||
SYMSRC
|
||||
SYMSRC2
|
||||
Example: SYMBASIC CLEAR
|
||||
.11 Added: Command line now accepts Indirect mode via ( )
|
||||
Example: U (BRKV)
|
||||
.10 Added: Pretty printing 'B' of all bytes treated as data.
|
||||
.9 Fixed: Renamed ambiguous command 'DL' to 'B' to list all bytes being treated as data
|
||||
Renamed command: 'B' to 'Z' as an alias to treat byte(s) as data
|
||||
.8 Fixed: Define Code 'X' wasn't removing entries
|
||||
.7 Fixed: DATA1 was using call win setup for code, not data.
|
||||
.6 Cleanup of command table to have the proper internal command enum.
|
||||
D // CMD_MEM_MINI_DUMP_HEX_1 moved to alias section
|
||||
M1 // CMD_MEM_MINI_DUMP_HEX_1 moved to alias section
|
||||
M2 // CMD_MEM_MINI_DUMP_HEX_2 moved to alias section
|
||||
TEXT81 // CMD_VIEW_TEXT81 <- CMD_VIEW_TEXT8X
|
||||
TEXT82 // CMD_VIEW_TEXT82 <- CMD_VIEW_TEXT8X
|
||||
W // CMD_WATCH <- CMD_WATCH_ADD
|
||||
.5 Added: Internal consistency checking for commands and their internal command enum.
|
||||
.4 Fixed: Added custom assembler type and debugger disassembly display uses variable
|
||||
instead of always being hard-coded to Merlin directives.
|
||||
.5 Fixed: Data disassembler help -- was using wrong command help offset due to wrong order of commands.
|
||||
.3 Fixed: Assembler now accepts lower-case mnemonics
|
||||
.2 Fixed: help for command '@'
|
||||
.1 Added: new command: 'X' to Define Code
|
||||
Remove address being treated as data
|
||||
X // uses address cursor is on
|
||||
X symbol // uses address cursor is on
|
||||
X symbol address
|
||||
.0 Added: new command "DB" to Define Byte / Pseudo Mnemonic / Assembler Directive
|
||||
DB // uses address cursor is on
|
||||
DB symbol // uses address cursor is on
|
||||
DB symbol address
|
||||
DB symbol start:end
|
||||
Example:
|
||||
DB zp 0:ff
|
||||
2.6.2.0 Released with AppleWin 1.17.2.0
|
||||
|
||||
2.6.1.x
|
||||
.35 Fixed: Pressing enter on blank line while in assembler wouldn't exit it.
|
||||
.34 Fixed: Scrolling past top of the console output wouldn't draw blank lines
|
||||
.33 Added: While there is console input, can use Page Up, Page Down to scroll the console output buffer.
|
||||
.32 Added: Pressing Enter on a blank line now toggles the full screen console.
|
||||
"Blame" Nick for this great idea. :-)
|
||||
You can still use Ctrl-` if need be.
|
||||
.31 Added: Help examples for Memory Fill
|
||||
.30 Fixed: Memory Fill
|
||||
F start end value
|
||||
F start,len value
|
||||
F start:end value
|
||||
.29 Removd: Old unassembly alias MDC
|
||||
.28 Added: Can now toggle display of disassembly address on/off for a clean "source assembly" style
|
||||
Three way state
|
||||
1) "addr: ..."
|
||||
2) ": ..."
|
||||
3) " ..."
|
||||
.27 Fixed: help for memory fill no longer displays help for flags
|
||||
.26 Added: Was missing help for memory move
|
||||
.25 Changed: Cleaned up help calc text
|
||||
.24 Changed: Undid .5, .7 hack
|
||||
.23 Extended entering memory bytes to allow 16-bit values
|
||||
0:4C FF69
|
||||
.22 Renamed breakpoint commands
|
||||
BC -> BPC
|
||||
BD -> BPD
|
||||
BPE -> BPEDIT
|
||||
BE -> BPE
|
||||
BL -> BPL
|
||||
.21 Fixed: Trying to set zero page and other memory locations that
|
||||
were also commands, didn't update memory.
|
||||
A:##
|
||||
D:## // no longer shows mini dump starting at address 0
|
||||
F:##
|
||||
BC:##
|
||||
BD:##
|
||||
BE:##
|
||||
E8:##
|
||||
E16:##
|
||||
.20 Added: Implemented Memory Move commands: MM and classic Apple Monitor style
|
||||
2001<2000.3FFFM
|
||||
M 2001 2000:3FFF
|
||||
.19 Fixed: Added how to delete symbols to symbol help
|
||||
.18 Added: Loading duplicate symbols at start-up now listed
|
||||
.17 Added: When the debugger starts, attempts loading of additional symbol tables
|
||||
A2_BASIC.SYM
|
||||
A2_USER1.SYM
|
||||
A2_USER2.SYM
|
||||
A2_SRC1.SYM
|
||||
A2_SRC2.SYM
|
||||
Repsectively for basic, user1, user2, source1, and source2
|
||||
.16 Added: In addition to !, can now use ~ to remove a symbol
|
||||
symbasic aCold.reset = F128
|
||||
symbasic aWarm.reset = D43C
|
||||
symbasic ! aCold.reset
|
||||
symbasic ~ aWarm.reset
|
||||
.15 Fixed: Color coded when symbol address is updated.
|
||||
.14 Fixed updating of symbols to use correct symbol table
|
||||
.13 Added: Wildcard suport to dump symbol table(s)
|
||||
symbasic Acold.reset = F128
|
||||
symbasic Awarm.reset = D43C
|
||||
symbasic *
|
||||
.12 Added: Moved assembly symbols into own symbol table.
|
||||
Added: New command to reference assembly symbol table.
|
||||
symasm MyFirstAssemblyProgram = 300
|
||||
.11 Added: Applesoft/Basic symbol table.
|
||||
symbasic Acold.reset = F128
|
||||
symbasic Awarm.reset = D43C
|
||||
.10 Added: Split 'user' symbols into user1, and user2
|
||||
.9 Added: Split 'source' symbols into source1, and source2
|
||||
.8 Added: Applesoft symbols. Thank-you Bob Sander-Cederlof !
|
||||
.7 Fixed: renamed assembler command A to AS (as a work-around for: A:##)
|
||||
.6 Fixed: renamed mem fill command F to MF (as a work-around for: F:##)
|
||||
.5 Fixed: renamed mem dump command D to MD (as a work-around for: D:##)
|
||||
.4 Fixed: renamed mem enter word command EW to MEW, E16 to ME16
|
||||
.3 Fixed: renamed mem enter byte command E to MEB
|
||||
.2 Fixed: renamed mem enter byte command EB to ME8
|
||||
.1 Fixed: removed mem enter byte command E8
|
||||
|
||||
2.6.0.8 Released with AppleWin 1.16.1
|
||||
|
||||
=======
|
||||
2.6.1.x
|
||||
.32 Added: Pressing Enter on a blank line now toggles the full screen console.
|
||||
"Blame" Nick for this great idea. :-)
|
||||
You can still use Ctrl-` if need be.
|
||||
.31 Added: Help examples for Memory Fill
|
||||
.30 Fixed: Memory Fill
|
||||
F start end value
|
||||
F start,len value
|
||||
F start:end value
|
||||
.29 Removd: Old unassembly alias MDC
|
||||
.28 Added: Can now toggle display of disassembly address on/off for a clean "source assembly" style
|
||||
Three way state
|
||||
1) "addr: ..."
|
||||
2) ": ..."
|
||||
3) " ..."
|
||||
.27 Fixed: help for memory fill no longer displays help for flags
|
||||
.26 Added: Was missing help for memory move
|
||||
.25 Changed: Cleaned up help calc text
|
||||
.24 Changed: Undid .5, .7 hack
|
||||
.23 Extended entering memory bytes to allow 16-bit values
|
||||
0:4C FF69
|
||||
.22 Renamed breakpoint commands
|
||||
BC -> BPC
|
||||
BD -> BPD
|
||||
BPE -> BPEDIT
|
||||
BE -> BPE
|
||||
BL -> BPL
|
||||
.21 Fixed: Trying to set zero page and other memory locations that
|
||||
were also commands, didn't update memory.
|
||||
A:##
|
||||
D:## // no longer shows mini dump starting at address 0
|
||||
F:##
|
||||
BC:##
|
||||
BD:##
|
||||
BE:##
|
||||
E8:##
|
||||
E16:##
|
||||
.20 Added: Implemented Memory Move commands: MM and classic Apple Monitor style
|
||||
2001<2000.3FFFM
|
||||
M 2001 2000:3FFF
|
||||
.19 Fixed: Added how to delete symbols to symbol help
|
||||
.18 Added: Loading duplicate symbols at start-up now listed
|
||||
.17 Added: When the debugger starts, attempts loading of additional symbol tables
|
||||
A2_BASIC.SYM
|
||||
A2_USER1.SYM
|
||||
A2_USER2.SYM
|
||||
A2_SRC1.SYM
|
||||
A2_SRC2.SYM
|
||||
Respectively for basic, user1, user2, source1, and source2
|
||||
.16 Added: In addition to !, can now use ~ to remove a symbol
|
||||
symbasic aCold.reset = F128
|
||||
symbasic aWarm.reset = D43C
|
||||
symbasic ! aCold.reset
|
||||
symbasic ~ aWarm.reset
|
||||
.15 Fixed: Color coded when symbol address is updated.
|
||||
.14 Fixed updating of symbols to use correct symbol table
|
||||
.13 Added: Wildcard suport to dump symbol table(s)
|
||||
symbasic Acold.reset = F128
|
||||
symbasic Awarm.reset = D43C
|
||||
symbasic *
|
||||
.12 Added: Moved assembly symbols into own symbol table.
|
||||
Added: New command to reference assembly symbol table.
|
||||
symasm MyFirstAssemblyProgram = 300
|
||||
.11 Added: Applesoft/Basic symbol table.
|
||||
symbasic Acold.reset = F128
|
||||
symbasic Awarm.reset = D43C
|
||||
.10 Added: Split 'user' symbols into user1, and user2
|
||||
.9 Added: Split 'source' symbols into source1, and source2
|
||||
.8 Added: Applesoft symbols. Thank-you Bob Sander-Cederlof !
|
||||
.7 Fixed: renamed assembler command A to AS (as a work-around for: A:##)
|
||||
.6 Fixed: renamed mem fill command F to MF (as a work-around for: F:##)
|
||||
.5 Fixed: renamed mem dump command D to MD (as a work-around for: D:##)
|
||||
.4 Fixed: renamed mem enter word command EW to MEW, E16 to ME16
|
||||
.3 Fixed: renamed mem enter byte command E to MEB
|
||||
.2 Fixed: renamed mem enter byte command EB to ME8
|
||||
.1 Fixed: removed mem enter byte command E8
|
||||
|
||||
2.6.0.8 Released with AppleWin 1.16.1
|
||||
|
||||
2.6.0.6 Released with AppleWin 1.15
|
||||
.6 Added new command '@' to display the search results
|
||||
.5 Fixed display results of Searching to be colorized
|
||||
.4 Fixed ? to sort and colorize commands
|
||||
.3 Fixed HELP to not include blank line
|
||||
.2 Fixed 'G' to not send the Return of the command into the Apple Keyboard
|
||||
.1 Renamed GO to G to not conflict with GR, GR1, GR2
|
||||
.0 Added 18 new view output commands from inside the debugger!
|
||||
Added commands:
|
||||
TEXT, TEXT1, TEXT2
|
||||
TEXT80, TEXT81, TEXT82
|
||||
GR, GR1, GR2
|
||||
DGR, DGR1, DGR2
|
||||
HGR, HGR1, HGR2
|
||||
DHGR, DHGR1, DHGR2
|
||||
Added aliases:
|
||||
TEXT40, TEXT41, TEXT42
|
||||
Example:
|
||||
F7 // enter debugger
|
||||
HELP VIEW // view help summary
|
||||
HGR // view current Hi-Res Screen. press a key to return to the normal debugger view
|
||||
|
||||
TODO: 2.6.0.0 released with next version of AppleWin (1.12.9.2)
|
||||
|
||||
.11 Added: Trace File Now displays filename tracing is saved to.
|
||||
.10 Fixed: Trace File wasn't displaying assembly mnemonics
|
||||
.9 Added: Internal change: Seperated Disassembling and Drawing a little more.
|
||||
See: GetDisassemblyLine() and FormatDisassemblyLine()
|
||||
.8 Fixed: 100% CPU utilization polling for mouse events in debugger
|
||||
.7 Added: Colorized PROFILE LIST output
|
||||
.6 Fixed: Debugger mouse click not checking if in Debug mode
|
||||
.5 Fixed: HELP WA wasn't displaying help for Watch Add
|
||||
.4 Added: Colorized most of built in debugger help.
|
||||
.3 Added: In disassembly, regs X & Y in mnemonic line are now color coded
|
||||
.2 Changed internal representation of color console
|
||||
.1 Console now jumps to end, when return pressed
|
||||
2.5.7.0 Debugger using new Apple Font with color console support
|
||||
|
||||
.41 Fixed: Breakpoints now properly handle ranges (both relative and absolute)
|
||||
See HELP BPR
|
||||
.40 Changed: Cleaned up Bookmarks, Watches, ZeroPage to be more consistent.
|
||||
Example:
|
||||
ZPA // list
|
||||
ZPA CV // add address
|
||||
ZPA 0 CV // update with new address
|
||||
ZPA 0 CV CH // add/update a sequence
|
||||
.39 Changed: Cleaned up many commands and HELP categories.
|
||||
.38 Added: BMSAVE Bookmarks are now saved.
|
||||
.37 Changed: Breakpoints now recognize op '!=' or '!' for not equal.
|
||||
.36 Removed: Command Config menu (OPTION) since it is not needed
|
||||
.35 Changed: Command CONFIG renamed to OPTION to prevent same name collision with category
|
||||
.34 Fixed: The comment to end-of-line (//) is now a proper token
|
||||
.33 Fixed: Parsing of operators <= >=
|
||||
.32 Fixed: HELP SYM displaying help category, not help command.
|
||||
.31 Added: Mini-help for Watches
|
||||
.30 Fixed: Command aliases are no longer displayed multiple times
|
||||
i.e. HELP BEN // would show BENCHMARK BENCHMARK (BENCH)
|
||||
.29 Fixed: Removed hard-coded magic number spacing for Regs on info panel
|
||||
.28 Fixed: Commands and params can now be in lowercase
|
||||
.27 Fixed: Help now does partial matches. i.e. HELP OP
|
||||
.26 Fixed: FONT checking wrong arg count - bug introduced when op * was added.
|
||||
.25 Fixed: Console not handling string with length same as console width
|
||||
.24 Added: HELP RANGE
|
||||
.23 Added: HELP OPERATORS
|
||||
.22 Fixed: Memory searching now accepts ranges. see HELP S, HELP SH
|
||||
.21 Fixed: Updated BLOAD BSAVE Help
|
||||
.20 Fixed: BLOAD, BSAVE now accept ranges.
|
||||
.19 Fixed: Backspace toggles quote state for single quotes now too.
|
||||
.18 Changed: Results of searching now start at 1, not zero.
|
||||
i.e.
|
||||
S F000,1000 'Apple'
|
||||
MA1 @1
|
||||
.17 Added: HELP S
|
||||
.16 Changed: Search Text (S) now uses consistent quoting
|
||||
"...ASCII..."
|
||||
'...High-Bit Apple Text...'
|
||||
Commands: Search Ascii (SA), and Search Apple Text (ST) are now deprecated.
|
||||
.15 Fixed: Search Text wasn't allowing multiple apple text chars.
|
||||
.14 Single Quoting now allows lower case input
|
||||
.13 Fixed: Escape to clear console input, didn't reset quoted flag
|
||||
.12 Changed: BLOAD failure now prints path/file it tried.
|
||||
.11 Fixed: Memory Searching not handling comma seperating address,length
|
||||
.10 Fixed: console not wrapping long lines
|
||||
.9 Fixed: console resize not set to full width
|
||||
.8 Fixed: PRINTF help
|
||||
.7 Extended: command Bookmark List (BML)
|
||||
Also displays maximum bookmarks if no current bookmarks are set.
|
||||
.6 Extended: command Breakpoint List (BL)
|
||||
Also displays maximum breakpoints if no current breakpoints are set.
|
||||
.5 Extended: command Watch Add (W), and Watch List (WL)
|
||||
Also displays maximum watchpoints if no current watchpoints are set.
|
||||
.4 Fixed: memory dump no longer overwrites icons when dumping SY6522 or AY8910
|
||||
MA1 SY
|
||||
MA1 AY
|
||||
.3 Fixed: Target display bug
|
||||
_6502_GetTargets() Indirect (Zeropage) Indexed, Y not clamping pointer.
|
||||
F7
|
||||
DISASM POINTER 1
|
||||
R PC FAC7
|
||||
FE:55
|
||||
R Y FF
|
||||
.2 Added: new command: DISASM POINTER [0 | 1]
|
||||
Toggles the display of the instruction's target pointer values on / off in the info panel.
|
||||
The default is now off, since the main disasm window shows target values for indirect addressing modes.
|
||||
.1 Added: Increased breakpoints to 15, Watches to 6, Zeropage pointers to 6.
|
||||
Fixed: Display only active breakpoints.
|
||||
.0 Rearranged/Reorganized info panel to allow full width console
|
||||
- Regs are now listed at the top of the window
|
||||
- Breakpoint title has been removed
|
||||
- Watch title has been removed
|
||||
- Target now shares space with the stack display
|
||||
- Memory Dump 2 is now only 2 lines
|
||||
2.5.6.x
|
||||
|
||||
.4 Added: Help Categories: BOOKMARKS, HELP, OUTPUT
|
||||
.3 Re-organized output commands into seperate category.
|
||||
ECHO, CALC, PRINT, PRINTF
|
||||
.2 Added: Bookmark commands
|
||||
BM
|
||||
BMA # address // Bookmark add
|
||||
BMC * | # [, #] // Bookmark clear
|
||||
.2 Added: new console output commands: PRINT, PRINTF
|
||||
.1 Fixed: '*' operator being treated as operator if only argument
|
||||
2.5.5.0 Added multiplication operator: '*'
|
||||
|
||||
.15 Fixed: Help Category comma syntax parsing
|
||||
.14 Fixed: BP comma syntax parsing
|
||||
.13 Fixed: BSAVE comma syntax parsing. Comma after filename is mandatory now.
|
||||
BSAVE ["Filename"], addr, len
|
||||
.12 Fixed: BLOAD comma syntax parsing. Comma after filename is mandatory now.
|
||||
BLOAD ["Filename"], addr[, len]
|
||||
.11 Fixed: Go syntax parsing
|
||||
G StopAddress [SkipAddress,Length]
|
||||
.10 Changed: internal parsing of comma operator.
|
||||
It is now left in the command arguments.
|
||||
.9 Fixed: modifier keys (Shift,Ctrl,Alt) not being updated when mouse scrolling.
|
||||
.8 Changed scrolling page up & down to not scroll as far.
|
||||
.7 Fixed: scroll up bug, introduced with new scroll up code
|
||||
R PC FBB4
|
||||
up arrow
|
||||
.6 Fixed: scrolling page up & down, to keep better sync
|
||||
U F700
|
||||
pagedown
|
||||
pageup
|
||||
.5 Fixed: scrolling page up & down bug, loosing sync of disassembly lines
|
||||
U F500
|
||||
pagedown
|
||||
pageup
|
||||
F500...F526 -> F523 (should be F526, +20 lines)
|
||||
.4 Fixed: scroll down bug, loosing sync of "top" disassembly
|
||||
U F70F
|
||||
down arrow
|
||||
.3 Fixed: scroll up bug, loosing sync on disassembly by skipping a mnemonic line:
|
||||
i.e.
|
||||
U FA44 (FA56)
|
||||
up arrow
|
||||
.2 Added: Ctrl-# to jump to address
|
||||
.1 Added: Alt-# to set bookmark at address
|
||||
.0 Added: mouse wheel scrolling in debugger
|
||||
2.5.4.x
|
||||
|
||||
.16 Swapped -> and Alt ->
|
||||
-> Follow Target at Cursor
|
||||
Alt -> Jump Cursor to PC
|
||||
.15 Added: Alt -> to follow target at cursor
|
||||
.14 Fixed: BLOAD/BSAVE to update console.
|
||||
.13 Changed: BLOAD/BSAVE to use more traditional order of arguments:
|
||||
The comma after the filename must be left out for the time being.
|
||||
BSAVE "Filename" address,length
|
||||
BLOAD "Filename" address
|
||||
.12 Fixed: BPA to set breakpoints if no args
|
||||
.11 Fixed: Cleaned up HELP BP
|
||||
.10 Fixed: Cleaned up HELP BREAKPOINTS
|
||||
.9 Fixed: Cleaned up HELP DISASM
|
||||
.8 Added: DISASM to print current states
|
||||
.7 Added: DISASM TARGET [#]
|
||||
.6 Added: BLOAD addr[,len] "Filename"
|
||||
.5 Added: BSAVE addr,len "Filename"
|
||||
.4 Added: HELP DISASM
|
||||
.3 Added: DISASM [BRANCH | COLON | OPCODE | SPACES] #
|
||||
.2 Fixed: HELP CONFIG not working
|
||||
.1 Linards put undocumented mnemonics in lowercase
|
||||
2.5.3.x
|
||||
|
||||
2.5.2.x
|
||||
|
||||
3.0 Added: Ctrl-V (paste) now works.
|
||||
2.0 Added: BRKOP ## support
|
||||
2.5.1.0 Added: BRK ON|OFF support
|
||||
|
||||
.23 Fixed: Moved columns of disasm for instructions, and target values over one char left, to leave whitespace past the target 'char' on the end
|
||||
.22 Added: Disasm window now shows target values for indirect, and indexed addressing modes.
|
||||
i.e.
|
||||
0:34 12 00 00 AA 99
|
||||
D0:16 03
|
||||
1234:56 78 9A
|
||||
R X D0
|
||||
R Y 2
|
||||
300:A9 55 // LDA #$55
|
||||
302:4C 89 67 // JMP $6789
|
||||
305:AD 01 00 // LDA $0001 = 12
|
||||
308:A5 00 // LDA $00 = #34
|
||||
30A:DE 00 00 // DEC $0000,X $D0=FF
|
||||
30D:BE 02 00 // LDX $0002,Y
|
||||
310:B4 35 // LDY $30,X
|
||||
312:B6 00 // LDX $00,Y $02=0
|
||||
314:D0 02
|
||||
316:A1 00 // LDA ($00,X)
|
||||
318: 7C 00 00 // JMP ($0000,X)
|
||||
31B:B1 00 // LDA ($00),Y
|
||||
31D:B2 00 // LDA ($00)
|
||||
31F:6C 02 00 // JMP ($0002) = ($0000) -> 1234
|
||||
|
||||
.21 Fixed: Disasm display of "Zeropage, X" and "Zeropage, Y" targets weren't wrapping on the zero-page.
|
||||
.20 Added: Single quoted chars in search are treated as opposite high-bit.
|
||||
i.e. S D000,FFFF "NEX" 'T' searches for NEXT, with the 'T' having the high-bit set.
|
||||
NEW: S search text or hex
|
||||
NEW: SA search ASCII text (single quote refers to Apple Text)
|
||||
NEW: ST search Apple text (single quote refers to ASCII text)
|
||||
.19 Added: Search Results can now be (de) referenced via @
|
||||
.18 Added: new operator '@'
|
||||
|
||||
.17 Fixed bug in _GetStartEnd(). i.e. D000,FFFF -> D000,CFFF (nothing searched!)
|
||||
|
||||
2.5.0.16 released with AppleWin 1.12.9.1
|
||||
|
||||
.16 Added: addr:byte [byte]
|
||||
.15
|
||||
.14 Fixed: Parses not to cook the args, until right before eating them
|
||||
.13 Fixed: script to not append filename extension
|
||||
.12 Fixed: command // to be comment
|
||||
.11 Console sometimes wouldn't draw due to g_bDebuggerViewingAppleOutput being still incorrectly set to true
|
||||
.10 Added: double forward slash on command line now ignores rest of command (same as C++ comment)
|
||||
.9 Added: Legacy Apple "Monitor" Commands in ExecuteCommand()
|
||||
####G (JMP $Address)
|
||||
####L (Unassemble)
|
||||
.8 Fixed: console input length not updated from script line length in CmdConfigRun()
|
||||
.7 Fixed: script read hang in GetLinePointers()
|
||||
.6 Fixed: Assembler storing one too many bytes in AssemblerPokeAddress()
|
||||
.5 Fixed: Assembler not parsing target address in AssemblerGetArgs()
|
||||
A 40C7
|
||||
BRA $40D7
|
||||
.4 Fixed: Assembler hang in AssemblerProcessDelayedSymols()
|
||||
A 40C7
|
||||
BRA $40D7
|
||||
.3 Fixed: BPM to break ON the trigger, not after
|
||||
Cleaned up Breakpoint code
|
||||
.2 Fixed: BP address[,Length] to re-direct to BPX
|
||||
.1 Added: Search Hex
|
||||
SH Address,Len Byte [Byte ..]
|
||||
Wildcard support
|
||||
i.e.
|
||||
SH FA00,FF 20 ? ? 20
|
||||
.0 Added: DISK # PROTECT [0 | 1]
|
||||
.0 Added: DISK # EJECT
|
||||
2.5 split Debugger files
|
||||
|
||||
.21 Changed: Branch indicator now a little bigger +3 in DebugInitialize() (easier to read), indented ^,V to make the < stand out
|
||||
U 300
|
||||
E 300 D0 80 D0 FE D0 00
|
||||
.20 Added: BW is now a seperate color scheme
|
||||
.19 Added: ECHO CmdConfigEcho(), g_pConsoleFirstArg, and ArgsGet()
|
||||
.18 Changed: BPX now defaults to setting breakpoint at cursor.
|
||||
.17 Changed: BP now defaults to setting breakpoint at PC.
|
||||
|
||||
Patch 22
|
||||
.16 fixed BPM. i.e. BPM C400,100. Boot: ulti4bo.dsk, breaks at: 81BC: STA ($88),Y $0088=$C480 ... C483: A0
|
||||
|
||||
Patch 21
|
||||
.15 Fixed: CmdRegisterSet() equal sign is now optional. i.e. R A [=] Y
|
||||
.14 Optimized: ArgsCook()
|
||||
.13 Fixed: HELP "..." on ambigious command displays potential commands
|
||||
.12 Added: Token %, calculator mod
|
||||
.11 Added: Token /, calculator div
|
||||
.10 Added: Token ^, calculator bit-xor
|
||||
.9 Added: Token |, calculator bit-or
|
||||
.8 Added: Token &, calculator bit-and
|
||||
.7 Added: Mini-Assembler
|
||||
.6 Added: MOTD (Message of the Day) : Moved from DebugBegin()
|
||||
.5 Added: HELP SOURCE
|
||||
.4 Fixed: SYMMAIN SYMUSER SYMSRC to now only search their respective symbol tables
|
||||
.3 Added: _CmdSymbolList_Address2Symbol() _CmdSymbolList_Symbol2Address() now take bit-flags of which tables to search
|
||||
.2 Added: EB alias for E
|
||||
.1 Added: EW address value16 CmdMemoryEnterWord() to set memory with 16-Bit Values
|
||||
2.4.2.0
|
||||
.14 Added: SYM ! name to remove (user) symbol. _CmdSymbolsUpdate()
|
||||
.13 Added: JSR address|symbol CmdJSR()
|
||||
.12 Fixed: SYM address|symbol now reports if address or symbol not found. CmdSymbolsList()
|
||||
.11 Fixed PageUp*, PagDn* not being recognized valid commands.
|
||||
|
||||
Patch 20
|
||||
.10 Added: SYM2 symbolname = value
|
||||
.9 Added: Undocumented command: FONT *
|
||||
.8 Improved: FONT MODE # is now more accurate. i.e. U 301
|
||||
FONT MODE 0 Classic line spacing (19 lines: 301 .. 313)
|
||||
FONT MODE 1 Improved line spacing (20 lines: 301 .. 314)
|
||||
FONT MODE 2 Optimal line spacing (22 lines: 301 .. 316)
|
||||
.7 Fixed: ArgsCook() wasn't parsing #value properly. i.e. CALC #A+0A
|
||||
.6 Cleanup: DrawWatches()
|
||||
|
||||
Patch 19
|
||||
.5 Fixed: ProfileSave() doesn't strip '%' percent signs anymore. Changed: fprintf() to fputs()
|
||||
Fixed: PROFILE RESET doesn't do dummy run of formatting profile data.
|
||||
.4 Fixed: Exporting Profile data is now Excel/OpenOffice friendly.
|
||||
Zero counts not listed on console. (They are when saved to file.)
|
||||
|
||||
Patch 18
|
||||
.3 Fixed: Help_Arg_1() now copies command name into arg.name
|
||||
.2 Fixed: Temporarily removed extra windows that aren't done yet from showing up: WINDOW_IO WINDOW_SYMBOLS WINDOW_ZEROPAGE WINDOW_SOURCE
|
||||
.1 Added: PROFILE LIST -- can now view the profile data from witin the debugger!
|
||||
2.4.1 Added: PROFILE SAVE -- now we can optimize (D0 BNE), and (10 BPL) sucking up the major of the emulator's time. WOOT!
|
||||
Added: _6502GetOpmodeOpbyte() and _6502GetOpcodeOpmode()
|
||||
.37 Fixed: Misc. commands not updating the console when processed
|
||||
|
||||
Patch 17
|
||||
.36 Data window now shows text dump based on memory view set (ASCII or APPLE)
|
||||
MA1 D0D0; DATA;
|
||||
MT1 D0D0; DATA;
|
||||
D D0D0; DATA;
|
||||
.35 Renamed: ML1 ML2 to MT1 MT2 (Mem Text)
|
||||
.34 Removed: MH1 MH2 (redundant MEM_VIEW_APPLE_TEXT)
|
||||
.33 Fixed: Tweaking of Lo,Hi,Norm Ascii colors for Disasm Immediate & Memory Dumps
|
||||
ML1 D0D0; MH2 D0D0; U FA75
|
||||
.32 Changed: Lo now maps High Ascii to printable chars. i.e. ML1 D0D0
|
||||
.31 Ctrl-Tab, and Ctrl-Shift-Tab now cycle next/prev windows.
|
||||
.30 Added: Up,Down,PageUp,PageDown,Shift-PageUp,Shift-PageDown,Ctrl-PageUp,Ctrl-PageDown now scroll Data window
|
||||
.29 Added: DATA window now shows memory dump
|
||||
|
||||
Patch 16
|
||||
.28 Fixed: MONO wasn't setting monochrome scheme
|
||||
.27 Changed: Registers now drawn in light blue for both DrawSubWindow_Info() [DrawRegisters()] and DrawBreakpoints()
|
||||
Reg names in DrawSubWindow_Info no longer hard-coded: using g_areakpointSource[]
|
||||
.26 Changed: DrawTargets() now shows Temp Address, and Final Address as orange (FG_INFO_ADDRESS)
|
||||
.25 Changed: Flag Clear "FC" to "CL" (like 6502 mnemonic)
|
||||
Changed: Flag Set "FS" to "SE" (like 6502 mnemonic)
|
||||
Added: Mirrored 6502 Mnemonics to clear/set flags as commands
|
||||
Moved: Legacy Flag Clear/Set commands "R?" "S?" to aliases
|
||||
.24 Fixed OPCODE 2F: AM_INVALID1 -> AM_INVALID3
|
||||
.23 Fixed OPCODE 0F: AM_INVALID1 -> AM_INVALID3
|
||||
.22 Fixed: Shift-PageUp Shift-PageDown Ctrl-PageUp Ctrl-PageDown -> _CursorMoveUpAligned() & _CursorMoveDownAligned()
|
||||
Bug: U F001, Ctrl-PageDown
|
||||
Was using current disasm cursor address instead of top disasm cursor
|
||||
.21 Fixed: _CursorMoveUpAligned() & _CursorMoveDownAligned() not wrapping around past FF00 to 0, and wrapping around past 0 to FF00
|
||||
.20 Fixed: DisasmCalcTopFromCurAddress() causing bogus g_bDisasmCurBad when disasm invalid opcodes.
|
||||
.19 g_aAddressingFormat[] -> g_aOpmodes[]
|
||||
.18 Reverted .17 Changed StackPointer Input/Output. 'SP' is now back to 'S' (to be consistent with 6502 mnemonics)
|
||||
|
||||
Patch 15
|
||||
.17 Changed StackPointer Input/Output from 'S' to 'SP'
|
||||
.16 Fixed Go StopAddress [SkipAddress,Length] Trace() not working afterwards
|
||||
.15 Added Info Regs color - Foreground and Background (orange)
|
||||
|
||||
Patch 14
|
||||
.14 Added: Stack register now shows stack depth
|
||||
.13 Bugfix: CmdBreakpointAddPC() operators now don't add extra breakpoints. i.e. BPX P < FA00
|
||||
.12 Bugfix: DrawMemory() should draw memory byte for IO address: ML1 C000
|
||||
|
||||
Patch 13
|
||||
NightlyBuild
|
||||
.11 Disasm now looks up symbols +1,-1. i.e. U FA85, u FAAE
|
||||
.10 Fixed '~' full console height
|
||||
.9 Fixed: FindCommand() to update command found if not exact match
|
||||
.8 Moved: Flag names from g_aFlagNames[] to "inlined" g_aBreakpointSource[]
|
||||
.7 Extended: Calc to show binary values, and char is single-quoted
|
||||
Nightly Build
|
||||
.6 Bugfix: DrawTargets() should draw target byte for IO address: R PC FB33
|
||||
.5 Extended: FONT "FontName" [Height]
|
||||
.4 Extended: Go StopAddress [SkipAddress,Len]
|
||||
.3 Added BPR F break on flag
|
||||
Added ! new breakpoint operator: NOT_EQUAL
|
||||
|
||||
Patch 12
|
||||
.2 Fixed: FindCommand() and FindParam() now returns 0 if name length is 0.
|
||||
.1 Fixed: CmdHelpSpecific() wasn't printing help for 1 argument set by other commands
|
||||
2.4.0.0 added: uber breakpoints: BPR [A|X|Y|PC|SP] [<,<=,=,>,>=] address
|
||||
.2 fixed: parsing console input to detect immediate values on operators '+', '-'
|
||||
You can now do register arithmetic: CALC A+X+Y
|
||||
.1 added: mini-calculator 'CALC'
|
||||
2.3.2 Rewrote parsing of console input
|
||||
You can now do stuff like:
|
||||
BPA INITAN+3
|
||||
FONT "Lucida Console"
|
||||
|
||||
Patch 11
|
||||
.19 fixed disasm: new color for disasm target address (orange)
|
||||
U FF14 shouldn't colorize ',X'
|
||||
U FF16 shouldn't colorize ',Y'
|
||||
U FF21 shouldn't colorze 'symbol,Y'
|
||||
Addr should be purple or orange to verify is fixed
|
||||
.18 fixed disasm: all indirects to do symbol lookup, and colorized '('...')' as operators
|
||||
.17 added disasm: syntax coloring to immediate mode prefix '#$'
|
||||
.16 fixed disasm window to work with proportional fonts
|
||||
.15 fixed buffer-overun crash in TextConvertTabsToSpaces()
|
||||
|
||||
Patch 10
|
||||
.14 fixed help CATEGORY & SPECIFIC not working properly
|
||||
.13 fixed bug of CODE not removing CODE window split
|
||||
.12 fixed split window bug of re-sizing console too large
|
||||
.11 removed hard-coded height of 16 for line height in various Draw*()
|
||||
.10 added alpha feature: SOURCE2 now shows source assembly listing in bottom half of window DrawSourceLine()
|
||||
.9 added P [#] to step number of times specified
|
||||
.8 added Up-Arrow, Down-Arrow to scroll console by one line in full screen console window
|
||||
.7 Added source level debugger to buffer complete assembly source listing file
|
||||
.6 Added help for MA#, ML#, MH#
|
||||
.5 added 3rd symbol table: SRC
|
||||
.4 Added: seperated console input color, console output color
|
||||
.3 SYM now prints which symbol table the symbol was found in.
|
||||
.2 Added "DFB" to add assembler variable to user symbol table
|
||||
.1 Fixed FindAddressFromSymbol() and FindSymbolFromAddress() to search user symbol table first
|
||||
2.3.1 Renamed all globals to conform to coding standard
|
||||
|
||||
.10 added TAB to move the cursor back to the PC, if there is no console input
|
||||
.9 fixed bug of setting reg, always moving the cursor back the PC
|
||||
.8 added detection if font is proportional. Still doesn't draw properly, but slowly getting there.
|
||||
.7 added colorized chars for regs, and memory ascii dump
|
||||
.6 fixed console buffering BUG: ~,~,VERSION *
|
||||
.5 added ~ to toggle full console on/off
|
||||
.4 Fixed BUG: 'G' DebugContinueStepping() disasm window cursor getting out of sync: R PC FA62; U FB40; G FB53
|
||||
.3 Fixed spelling of CmdWindowLast()
|
||||
.2 Added undocumented "VERSION *" to show the number of bytes in the disasm "window"
|
||||
.1 Fixed BUG: CmdTrace() disasm window cursor getting out of sync: Start, F7, PageUp, Space
|
||||
2.3.0.0 Syntax coloring for the disassembler! Plus a fancy branch indicator to 'PR#6'! Rock on!
|
||||
38 Fixed FindParam() bug of skipping every other parameter
|
||||
37 Fixed _PARAM_*_BEGIN _PARAM_*_END _PARAM_*_NUM
|
||||
36 Added Regs A,X,Y to show character
|
||||
35 Added syntax coloring for DrawBreakpoints()
|
||||
34 Fixed DrawMemory() viewing memory ASCII to map control-chars to a printable glyph
|
||||
33 Fixed 0 addr not working in CmdMemoryCompare()
|
||||
32 Added BG_INFO_INVERSE, FG_INFO_INVERSE for flag hilighting
|
||||
31 Changed FG_INFO_OPCODE color to yellow
|
||||
30 Fixed MDC 0, bug in CmdUnassemble()with garbage address, due to var not init, and symbol lookup failed
|
||||
29 Fixed typos in help summary, A, and D
|
||||
28 Fixed Scrolling with and without g_bDisasmCurBad
|
||||
27 Found bug -- can't scroll up past $5FFF with Tom's Bug Sample .. CmdCursorLineUp() not checking for gbDisamBad;
|
||||
26 Code cleanup: still have some '#define's to convert over to 'const'
|
||||
25 Fixed disasm singularity not showing up in DrawDisassemblyLine()
|
||||
24 Fixed an disasm singularity in DisasmCalcTopFromCurAddress() i.e. F7, G FB53, then Space (to trace) once.
|
||||
23 Fixed bug Watches not being cleared: _ClearViaArgs()
|
||||
22 Code Cleanup: Moved most ExtTextOut() to DebugDrawText()
|
||||
21 Changed End to jump $8000, due to redundant funcationality of Home, and wrap-around.
|
||||
20 Added: DisasmCalc*From*()
|
||||
19 New colors Enum & Array
|
||||
18 implemented RTS. fixed RET to use common stack return address logic.
|
||||
17 fixed console PageUp PageDn not refreshing console
|
||||
.2 WINDOW_CONSOLE &
|
||||
Implemented commands: MemoryDumpAscii*(): MA1 MA2 ML1 ML2 MH1 MH2
|
||||
16 removed BOOL Cmd*(), replaced with UPDATE_*
|
||||
15 New Console Scrolling
|
||||
14 extended FindParam() to specify [begin,end]
|
||||
13 added split window infastructure, added Window_e
|
||||
12 fixed PARAM aliases
|
||||
11 fixed FindParam() to allow aliases
|
||||
10 fixed SYM1 CLEAR, SYM2 CLEAR not actuall clearing
|
||||
9 fixed BufferOuput() in DebugBegin() clobbering first buffered output line
|
||||
.1 since source level debugging is a minor feature
|
||||
8 added command "VERSION *" to show internal debug info
|
||||
7 fixed mem enter not refreshing screen
|
||||
6 added source level debuggig back-end
|
||||
5 fixed "SYM 0" bug
|
||||
|
||||
*/
|
|
@ -1,244 +0,0 @@
|
|||
Requests (Wishlist):
|
||||
====================
|
||||
|
||||
* HOME/CLS Clear Screen
|
||||
|
||||
* DT Define Target
|
||||
Default disassembly:
|
||||
D7AF:A9 13 LDA #$13
|
||||
D7B1:A0 E9 LDY #$E9
|
||||
Correct disassembly:
|
||||
DT D7AF:B7B2
|
||||
D7AF:A9 13 LDA #<CON.ONE
|
||||
D7B1:A0 E9 LDY #>CON.ONE
|
||||
|
||||
* DF Define FAC
|
||||
|
||||
* Cleanup Applesoft listing
|
||||
* DB
|
||||
* DA
|
||||
* DF
|
||||
|
||||
* Read/Write Track/Sector
|
||||
DISK 2 READ 11 F 800
|
||||
DISK 2 WRITE 11 F 800
|
||||
|
||||
* Save/Load memory to mounted DOS3.3 disk
|
||||
DSAVE "LOGO.HGR",2000:3FFF,6,1
|
||||
DLOAD "LOGO.HGR"
|
||||
|
||||
* Save/load memory to mounted ProDOS disk/hard drive
|
||||
PREFIX
|
||||
PSAVE "LOGO.HGR",2000:3FFF
|
||||
PLOAD "LOGO.HGR"
|
||||
|
||||
* [ ] HELP BPM on read/write
|
||||
Nail down syntax:
|
||||
BPM A7 = R
|
||||
BPM A7 = W
|
||||
BPM R A7
|
||||
BPM W A7
|
||||
Add support 65D02 to break on read/write memory location
|
||||
|
||||
* [ ] HELP BPM
|
||||
Add help document and examples
|
||||
|
||||
* [ ] Fix BUG: (partial) symbols starting with E not parsed propery
|
||||
sym ErasePlayer1 = 65D3
|
||||
sym ErasePlayer
|
||||
Address not found: $000E
|
||||
|
||||
* [ ] Color code error messages in red foreground
|
||||
|
||||
- HELP CD: Document examples
|
||||
Helps needs to list:
|
||||
SEE: HELP PWD
|
||||
|
||||
- Allow EQUs to be directly entered in
|
||||
|
||||
Foo EQU $1234
|
||||
|
||||
Need to check if we have 3 params, 2nd param is EQU, 3rd param is address
|
||||
|
||||
- Fix BUG: 0:1 Doesn't work
|
||||
Work-around, use two hex digits for the address:
|
||||
00:1
|
||||
|
||||
- Debugger: wildcard search support for symbols
|
||||
SYMBASIC MICRO*
|
||||
|
||||
- Debugger:Ability to turn on/off alternative odd/even background coloring in disasm
|
||||
DISASM ROWCOLOR 0
|
||||
DISASM ROWCOLOR 0
|
||||
Why? Default to a custom (black?) background, and then have ANALYSE color-code
|
||||
the background line color to make it easier to visualize sections.
|
||||
i.e. See BrkDown reverse engineering PDF -- TODO: Need link
|
||||
|
||||
- Debugger: FUNC address:address
|
||||
Markup function block, with alternating background colors
|
||||
|
||||
FUNC 300:31F
|
||||
FUNC 320:33F
|
||||
|
||||
- Debugger: Ability to hide Regs panel
|
||||
DISASM REGS 0 // Hide Regs and Breakpoints
|
||||
DISASM REGS 1 // Show Regs only
|
||||
DISASM REGS 2 // Show Breakpoints only
|
||||
DISASM REGS 3 // Show Regs and Breakpoints (DEFAULT)
|
||||
|
||||
- Debugger: SPRITE <ADDR> <WIDTH> <HEIGHT> [SPAN]
|
||||
|
||||
- Debugger: HGRX <addr>
|
||||
view address as HGR
|
||||
i.e. HGRX 6000
|
||||
i.e. HGRX 8000
|
||||
|
||||
- Debugger: Color code commands in light blue
|
||||
Currently, everything is in white, making it hard to see input and output
|
||||
|
||||
- Debugger: Command history
|
||||
Once any non-whitespace character has been entered, Up arrow and Down arrow
|
||||
should scroll through prev and next command history respectively
|
||||
|
||||
- Debugger: Command line editing
|
||||
Left Arrow Move Cursor Left
|
||||
Right Arrow Move Cursor Right
|
||||
Ctrl-A Beginning of Line
|
||||
Ctrl-D Delete Character
|
||||
Ctrl-E End of Line
|
||||
|
||||
- Debugger: List symbol table
|
||||
SYMASM LIST
|
||||
SYMUSER1 LIST
|
||||
|
||||
- Debugger: Document: Add help example to list all symbol tables
|
||||
HELP SYMMAIN
|
||||
SYMMAIN *
|
||||
|
||||
- Debugger: Markup Byte with C_ prefix instead of B_
|
||||
DB 123
|
||||
Will auto-generate symbol in SYMASM
|
||||
B_123
|
||||
This should be:
|
||||
G_123
|
||||
|
||||
- Debugger: ANALYSE <range>
|
||||
Utility to help in automatic disassembly.
|
||||
Like "Sourcer" or "BrkDown"
|
||||
Automatically markup labels for
|
||||
* JSR
|
||||
* JMP
|
||||
* RTS
|
||||
* Branches
|
||||
* LD? abs
|
||||
* LD? abs,X
|
||||
* LD? abs,Y
|
||||
* etc.
|
||||
Should respect existing `X <range>` as data
|
||||
|
||||
Auto-generated labels:
|
||||
|
||||
B_#### = Branch target address
|
||||
F_#### = Function (or F_, or J_, or L_), new command: DF
|
||||
G_#### = Global Byte
|
||||
P_#### = Pointer
|
||||
R_#### = Function return
|
||||
Z_## = Zero Page
|
||||
|
||||
Don't know how to generate:
|
||||
A_#### = Data Address
|
||||
W_#### = Data Word
|
||||
|
||||
- Debugger: Document: SYMASM and SYMUSER differences
|
||||
SYMASM data symbols placed here via DB Foo = 100
|
||||
SYMUSER func symbols placed here via SYM Bar = 200
|
||||
|
||||
- Debugger: Symbol tables for DOS 3.3 and ProDOS
|
||||
SYMUSER2 -> SYMDOS33
|
||||
SYMSOURCE2 -> SYMPRODOS
|
||||
|
||||
- Debugger: Autoexec !
|
||||
.AWD = Microsoft Fax
|
||||
.A2D = Apple 2 Debug
|
||||
.AW2 = AppleWin Disk = icon of app, disk image(s)
|
||||
|
||||
RUN AppleWin.a2d // Official AppleWin Supplied Debug Config
|
||||
RUN Debugger.a2d // User supplied AppleWin Debug Config
|
||||
|
||||
- Debugger: Custom Soft switches
|
||||
|
||||
SOFT CLEAR
|
||||
SOFT ADD C050
|
||||
SOFT ADD 50
|
||||
SOFT LIST
|
||||
SOFT LOAD
|
||||
SOFT SAVE
|
||||
|
||||
- New Debugger features:
|
||||
> 1 SCR shows what the Apple monitor should look like at the current point
|
||||
> 2 MDS same as ME but shows strings (ie "ABC" instead of "c1 c2 c3"
|
||||
> 3 TS text search (and may be a hex search function too ?"
|
||||
|
||||
- Incorporate Laine Houghton's modifications to debugger (?)
|
||||
|
||||
- Source level debugging using WordPad & Merlin asm output (tell WordPad to FIND / GOTO line).
|
||||
|
||||
|
||||
|
||||
Implemented:
|
||||
============
|
||||
|
||||
* [x] Debugger V2.9.0.14: Cycle Profiling, use PROFILE RESET, and PROFILE LIST.
|
||||
|
||||
. DONE: v16.0.0.0 DEBUGGER: (use F7): RESET button to break into the Monitor (preserving memory).
|
||||
|
||||
. DONE: v16.0.0.0: DEBUGGER: Ability to search and modify for a value in memory in order to cheat in some games.
|
||||
|
||||
. DONE: v16.0.0.0: DEBUGGER: Hex search in debugger
|
||||
|
||||
* [x] Version: ?
|
||||
Debugger: Turn off target columns in dis-assembly
|
||||
Use:
|
||||
DISASM TARGET 0 // off
|
||||
DISASM TARGET 1 // show target byte
|
||||
DISASM TARGET 2 // show target address
|
||||
DISASM TARGET 3 // Show target address and byte (DEFAULT)
|
||||
|
||||
. Debugger: BLOAD with no arguments should print current save path
|
||||
. Debugger: FIX BLOAD with bad path!! (should use path of last disk load!)
|
||||
. Debugger: FIX BSAVE with bad path!! (should use path of last disk load!)
|
||||
. Debugger: merlin "filename",S6,D1
|
||||
. Debugger: COLOR RESET
|
||||
. Debugger: COLOR SAVE ["filename"]
|
||||
. Debugger: COLOR LOAD ["filename"]
|
||||
|
||||
. DONE: help f
|
||||
. DONE: help m
|
||||
. DONE: BC:##
|
||||
. DONE: BD:##
|
||||
. DONE: BE:##
|
||||
. DONE: help f
|
||||
. DONE: help m
|
||||
. DONE: EA:##
|
||||
. DONE: E8:##
|
||||
. DONE: a:##
|
||||
. DONE: d:##
|
||||
. DONE: Debugger 2.6.1.19: ADD: AppleSoft symbols to Symbol Table
|
||||
|
||||
. DONE: v16.0.0.0: Video: PrintScreen (save to disk with auto file numbering.)
|
||||
. DONE: v16.0.0.0: Debugger: TEXT show current 40-col text page
|
||||
. DONE: v16.0.0.0: Debugger: TEXT80 show current 80-col text page
|
||||
. DONE: v16.0.0.0: Debugger: GR show current lo-res graphics page
|
||||
. DONE: v16.0.0.0: Debugger: HGR show current hi-res graphis page
|
||||
. DONE: v16.0.0.0: Debugger: DGR show current double hi-res graphics page
|
||||
. DONE: v16.0.0.0: Debugger: TEXT1 Show 40 Column Text Page 1
|
||||
. DONE: v16.0.0.0: Debugger: TEXT2 Show 40 Column Text Page 2
|
||||
. DONE: v16.0.0.0: Debugger: TEXT81 1 Show 40 Column Text Page 1
|
||||
. DONE: v16.0.0.0: Debugger: TEXT82 2 Show 40 Column Text Page 1
|
||||
. DONE: v16.0.0.0: Debugger: HGR1 show Hi-Res Page 1
|
||||
. DONE: v16.0.0.0: Debugger: HGR2 show Hi-Res Page 2
|
||||
. DONE: v16.0.0.0: Debugger: DHGR1 show Double Hi-Res Page 1
|
||||
. DONE: v16.0.0.0: Debugger: DHGR2 show Double Hi-Res Page 2
|
||||
. DONE: Debugger: shift+ins to paste from clipboard (use Ctrl-V to paste.)
|
||||
|
||||
|
|
@ -1,806 +0,0 @@
|
|||
;*
|
||||
;*
|
||||
;* * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
;* * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
;* * * *
|
||||
;* * M U S T B E O N P A G E B O U N D A R Y * *
|
||||
;* * * *
|
||||
;* * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
;* * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
;* *
|
||||
;* ProDOS DISK ][ Formatter Device Driver *
|
||||
;* *
|
||||
;* Copyright Apple Computer, Inc., 1982-1984 *
|
||||
;* *
|
||||
;* Enter with ProDOS device number in A-register: *
|
||||
;* Zero = bits 0, 1, 2, 3 *
|
||||
;* Slot No.= bits 4, 5, 6 *
|
||||
;* Drive 1 = bit 7 off *
|
||||
;* Drive 2 = bit 7 on *
|
||||
;* *
|
||||
;* Error codes returned in A-register: *
|
||||
;* $00 : Good completion *
|
||||
;* $27 : Unable to format *
|
||||
;* $2B : Write-Protected *
|
||||
;* $33 : Drive too SLOW *
|
||||
;* $34 : Drive too FAST *
|
||||
;* NOTE: Carry flag is set if error occured. *
|
||||
;* *
|
||||
;* Uses zero page locations $D0 thru $DD *
|
||||
;* *
|
||||
;* - - - - - - - - - - - - - - - - - - - - - - - - - - *
|
||||
;* Modified 15 December 1983 to disable interrupts *
|
||||
;* Modified 20 December 1983 to increase tolerance *
|
||||
;* of disk speed check *
|
||||
;* Modified 30 March 1983 to increase tolerance of *
|
||||
;* disk speed *
|
||||
;* * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
|
||||
;
|
||||
; Disassembly and annotations by TC (Nov. 2017)
|
||||
; . disassembly from prodos_utility.dsk (ProDOS 1.1.1)
|
||||
;
|
||||
|
||||
;
|
||||
; Entrypoint
|
||||
; Pre: A=slot*16, ($DE)=#$01=volume#
|
||||
;
|
||||
7900- 08 PHP
|
||||
7901- 78 SEI ; interrupt disable
|
||||
7902- 20 3A 79 JSR $793A
|
||||
7905- 28 PLP ; restore interrupt ena/dis state
|
||||
7906- C9 00 CMP #$00
|
||||
7908- D0 02 BNE $790C
|
||||
790A- 18 CLC ; res=OK
|
||||
790B- 60 RTS
|
||||
|
||||
; error:
|
||||
790C- C9 02 CMP #$02
|
||||
790E- D0 05 BNE $7915
|
||||
7910- A9 2B LDA #$2B ; MLI error: write protected
|
||||
7912- 4C 21 79 JMP $7921
|
||||
;
|
||||
7915- C9 01 CMP #$01
|
||||
7917- D0 05 BNE $791E
|
||||
7919- A9 27 LDA #$27 ; MLI error: I/O error
|
||||
791B- 4C 21 79 JMP $7921
|
||||
;
|
||||
791E- 18 CLC
|
||||
791F- 69 30 ADC #$30 ; =>$33 or $34
|
||||
7921- 38 SEC ; res=ERROR
|
||||
7922- 60 RTS
|
||||
; end
|
||||
|
||||
; Seek to track
|
||||
; Pre: A=trk#, X=slot*16
|
||||
7923- 0A ASL ; A=half track
|
||||
7924- 0E 24 7D ASL $7D24
|
||||
7927- 8D 36 7D STA $7D36
|
||||
792A- 8A TXA
|
||||
792B- 4A LSR
|
||||
792C- 4A LSR
|
||||
792D- 4A LSR
|
||||
792E- 4A LSR ; A=slot
|
||||
792F- A8 TAY ; Y=slot
|
||||
7930- AD 36 7D LDA $7D36
|
||||
7933- 20 C6 7A JSR $7AC6
|
||||
7936- 4E 24 7D LSR $7D24
|
||||
7939- 60 RTS
|
||||
; ??? (end)
|
||||
|
||||
; FormatDisk (called from Entrypoint)
|
||||
; Pre: A=slot*16, A.b7=drive#
|
||||
793A- AA TAX
|
||||
793B- 29 70 AND #$70
|
||||
793D- 8D 23 7D STA $7D23 ; set slot*16
|
||||
7940- 8A TXA
|
||||
7941- AE 23 7D LDX $7D23
|
||||
7944- 2A ROL ; C=drive#
|
||||
7945- A9 00 LDA #$00
|
||||
7947- 2A ROL
|
||||
7948- D0 06 BNE $7950
|
||||
794A- BD 8A C0 LDA $C08A,X ; select drive-1
|
||||
794D- 4C 53 79 JMP $7953
|
||||
7950- BD 8B C0 LDA $C08B,X ; select drive-2
|
||||
;
|
||||
7953- BD 89 C0 LDA $C089,X ; motor on
|
||||
7956- A9 D7 LDA #$D7
|
||||
7958- 85 DA STA $DA ; ($DA) = #$D7
|
||||
795A- A9 50 LDA #$50
|
||||
795C- 8D 24 7D STA $7D24 ; ($7D24) = 80
|
||||
|
||||
; Seek to track 0
|
||||
795F- A9 00 LDA #$00
|
||||
7961- 20 23 79 JSR $7923
|
||||
|
||||
; Wait (until motor up to speed?)
|
||||
7964- A5 DA LDA $DA ; read_vol
|
||||
7966- F0 06 BEQ $796E
|
||||
7968- 20 3A 7C JSR $7C3A ; Wait incs read_vol
|
||||
796B- 4C 64 79 JMP $7964
|
||||
|
||||
; Init vars/consts
|
||||
796E- A5 DE LDA $DE
|
||||
7970- 85 D3 STA $D3 ; ($D3) = write_vol = 1 (constant)
|
||||
7972- A9 AA LDA #$AA
|
||||
7974- 85 D0 STA $D0 ; ($D0) = #$AA (constant)
|
||||
7976- AD 20 7D LDA $7D20 ; max_gap3
|
||||
7979- 18 CLC
|
||||
797A- 69 02 ADC #$02
|
||||
797C- 85 D4 STA $D4 ; ($D4) = max_gap3 + 2
|
||||
797E- A9 00 LDA #$00
|
||||
7980- 85 D1 STA $D1 ; ($D1) = write_trk = 0
|
||||
|
||||
; Write next track
|
||||
7982- A5 D1 LDA $D1
|
||||
7984- AE 23 7D LDX $7D23
|
||||
7987- 20 23 79 JSR $7923
|
||||
798A- AE 23 7D LDX $7D23
|
||||
798D- BD 8D C0 LDA $C08D,X ; load disk write prot to latch(b7=1 => write protected)
|
||||
7990- BD 8E C0 LDA $C08E,X ; set read mode & read latch
|
||||
7993- A8 TAY
|
||||
7994- BD 8E C0 LDA $C08E,X ; set read mode
|
||||
7997- BD 8C C0 LDA $C08C,X ; read nib to latch & read latch
|
||||
799A- 98 TYA
|
||||
799B- 10 05 BPL $79A2
|
||||
799D- A9 02 LDA #$02 ; Error = write protected
|
||||
799F- 4C F9 79 JMP $79F9
|
||||
|
||||
; Write track
|
||||
79A2- 20 63 7C JSR $7C63
|
||||
79A5- 90 0E BCC $79B5
|
||||
; Error...
|
||||
79A7- A9 01 LDA #$01
|
||||
79A9- A4 D4 LDY $D4
|
||||
79AB- CC 1F 7D CPY $7D1F
|
||||
79AE- B0 02 BCS $79B2
|
||||
79B0- A9 04 LDA #$04
|
||||
79B2- 4C F9 79 JMP $79F9 ; error code = 4 (Drive too FAST)
|
||||
|
||||
; Succeeded writing track, now check gap3_count tolerance
|
||||
79B5- A4 D4 LDY $D4
|
||||
79B7- CC 1F 7D CPY $7D1F
|
||||
79BA- B0 05 BCS $79C1
|
||||
79BC- A9 04 LDA #$04
|
||||
79BE- 4C F9 79 JMP $79F9 ; error code = 4 (Drive too FAST)
|
||||
;
|
||||
79C1- CC 20 7D CPY $7D20
|
||||
79C4- 90 05 BCC $79CB
|
||||
79C6- A9 03 LDA #$03
|
||||
79C8- 4C F9 79 JMP $79F9 ; error code = 3 (Drive too SLOW)
|
||||
|
||||
; Read a max of 15 (not 16) address fields, looking for sector 0
|
||||
79CB- AD 22 7D LDA $7D22 ; A = #$10 (constant)
|
||||
79CE- 8D 25 7D STA $7D25
|
||||
;
|
||||
79D1- CE 25 7D DEC $7D25
|
||||
79D4- D0 05 BNE $79DB
|
||||
79D6- A9 01 LDA #$01
|
||||
79D8- 4C F9 79 JMP $79F9 ; error code = 1 (I/O error)
|
||||
79DB- AE 23 7D LDX $7D23
|
||||
79DE- 20 6A 7A JSR $7A6A ; Read address field
|
||||
79E1- B0 EE BCS $79D1
|
||||
79E3- A5 D8 LDA $D8 ; sector 0?
|
||||
79E5- D0 EA BNE $79D1 ; ... no, so keep reading
|
||||
|
||||
; Got address field for sector 0:
|
||||
|
||||
; Verify sector
|
||||
79E7- AE 23 7D LDX $7D23
|
||||
79EA- 20 07 7A JSR $7A07 ; ???
|
||||
79ED- B0 E2 BCS $79D1
|
||||
|
||||
; Prep for formatting next track
|
||||
79EF- E6 D1 INC $D1 ; inc write_trk
|
||||
79F1- A5 D1 LDA $D1
|
||||
79F3- C9 23 CMP #$23 ; done 35 tracks?
|
||||
79F5- 90 8B BCC $7982 ; ... no, so write next track
|
||||
79F7- A9 00 LDA #$00 ; res = OK
|
||||
|
||||
79F9- 48 PHA ; push error code
|
||||
79FA- AE 23 7D LDX $7D23
|
||||
79FD- BD 88 C0 LDA $C088,X
|
||||
7A00- A9 00 LDA #$00
|
||||
7A02- 20 23 79 JSR $7923
|
||||
7A05- 68 PLA ; pop error code
|
||||
7A06- 60 RTS
|
||||
; end
|
||||
|
||||
;
|
||||
; Verify sector
|
||||
;
|
||||
|
||||
; Read data prologue (D5 AA AD) within 32 nibbles
|
||||
7A07- A0 20 LDY #$20
|
||||
7A09- 88 DEY
|
||||
7A0A- F0 5C BEQ $7A68
|
||||
7A0C- BD 8C C0 LDA $C08C,X
|
||||
7A0F- 10 FB BPL $7A0C
|
||||
7A11- 49 D5 EOR #$D5
|
||||
7A13- D0 F4 BNE $7A09
|
||||
7A15- EA NOP
|
||||
7A16- BD 8C C0 LDA $C08C,X
|
||||
7A19- 10 FB BPL $7A16
|
||||
7A1B- C9 AA CMP #$AA
|
||||
7A1D- D0 F2 BNE $7A11
|
||||
7A1F- A0 56 LDY #$56 ; Y=#$56
|
||||
7A21- BD 8C C0 LDA $C08C,X
|
||||
7A24- 10 FB BPL $7A21
|
||||
7A26- C9 AD CMP #$AD
|
||||
7A28- D0 E7 BNE $7A11
|
||||
; Read data
|
||||
7A2A- A9 00 LDA #$00 ; ($D5) = #$FF = Number of #$96 nibbles to read
|
||||
7A2C- 88 DEY
|
||||
7A2D- 84 D5 STY $D5
|
||||
7A2F- BD 8C C0 LDA $C08C,X
|
||||
7A32- 10 FB BPL $7A2F
|
||||
7A34- C9 96 CMP #$96
|
||||
7A36- D0 30 BNE $7A68
|
||||
7A38- A4 D5 LDY $D5
|
||||
7A3A- D0 F0 BNE $7A2C
|
||||
;
|
||||
7A3C- 84 D5 STY $D5
|
||||
7A3E- BD 8C C0 LDA $C08C,X
|
||||
7A41- 10 FB BPL $7A3E
|
||||
7A43- C9 96 CMP #$96
|
||||
7A45- D0 21 BNE $7A68
|
||||
7A47- A4 D5 LDY $D5
|
||||
7A49- C8 INY
|
||||
7A4A- D0 F0 BNE $7A3C
|
||||
;
|
||||
7A4C- BD 8C C0 LDA $C08C,X
|
||||
7A4F- 10 FB BPL $7A4C
|
||||
7A51- C9 96 CMP #$96
|
||||
7A53- D0 13 BNE $7A68
|
||||
; Read data epilogue (DE AA)
|
||||
7A55- BD 8C C0 LDA $C08C,X
|
||||
7A58- 10 FB BPL $7A55
|
||||
7A5A- C9 DE CMP #$DE
|
||||
7A5C- D0 0A BNE $7A68 ; error
|
||||
7A5E- EA NOP
|
||||
7A5F- BD 8C C0 LDA $C08C,X
|
||||
7A62- 10 FB BPL $7A5F
|
||||
7A64- C9 AA CMP #$AA
|
||||
7A66- F0 5C BEQ $7AC4 ; CLC & RTS
|
||||
7A68- 38 SEC ; error
|
||||
7A69- 60 RTS
|
||||
; end
|
||||
|
||||
;
|
||||
; Read address field
|
||||
;
|
||||
; Post:
|
||||
; ($D7) = Chksum
|
||||
; ($D8) = Sec
|
||||
; ($D9) = Trk
|
||||
; ($DA) = Vol
|
||||
;
|
||||
; Carry set => error:
|
||||
; . max nibble count read before addr prologue
|
||||
; . chksum error
|
||||
; . addr epilogue not correct
|
||||
;
|
||||
|
||||
; Init: nibble count until error: 3+3*256 = 3+768 = 771
|
||||
7A6A- A0 FC LDY #$FC
|
||||
7A6C- 84 DC STY $DC
|
||||
|
||||
; Read until address prologue (D5 AA 96)
|
||||
7A6E- C8 INY
|
||||
7A6F- D0 04 BNE $7A75
|
||||
7A71- E6 DC INC $DC
|
||||
7A73- F0 F3 BEQ $7A68 ; error
|
||||
7A75- BD 8C C0 LDA $C08C,X
|
||||
7A78- 10 FB BPL $7A75
|
||||
7A7A- C9 D5 CMP #$D5
|
||||
7A7C- D0 F0 BNE $7A6E
|
||||
7A7E- EA NOP
|
||||
7A7F- BD 8C C0 LDA $C08C,X
|
||||
7A82- 10 FB BPL $7A7F
|
||||
7A84- C9 AA CMP #$AA
|
||||
7A86- D0 F2 BNE $7A7A
|
||||
7A88- A0 03 LDY #$03 ; Y=3
|
||||
7A8A- BD 8C C0 LDA $C08C,X
|
||||
7A8D- 10 FB BPL $7A8A
|
||||
7A8F- C9 96 CMP #$96
|
||||
7A91- D0 E7 BNE $7A7A
|
||||
|
||||
; Read 4&4
|
||||
; ($D7) = Chksum
|
||||
; ($D8) = Sec
|
||||
; ($D9) = Trk
|
||||
; ($DA) = Vol
|
||||
7A93- A9 00 LDA #$00
|
||||
7A95- 85 DB STA $DB ; update chksum
|
||||
7A97- BD 8C C0 LDA $C08C,X
|
||||
7A9A- 10 FB BPL $7A97
|
||||
7A9C- 2A ROL
|
||||
7A9D- 85 DD STA $DD
|
||||
7A9F- BD 8C C0 LDA $C08C,X
|
||||
7AA2- 10 FB BPL $7A9F
|
||||
7AA4- 25 DD AND $DD
|
||||
7AA6- 99 D7 00 STA $00D7,Y
|
||||
7AA9- 45 DB EOR $DB
|
||||
7AAB- 88 DEY
|
||||
7AAC- 10 E7 BPL $7A95
|
||||
;
|
||||
7AAE- A8 TAY
|
||||
7AAF- D0 B7 BNE $7A68 ; chksum error
|
||||
; Read epilogue (DE AA)
|
||||
7AB1- BD 8C C0 LDA $C08C,X
|
||||
7AB4- 10 FB BPL $7AB1
|
||||
7AB6- C9 DE CMP #$DE
|
||||
7AB8- D0 AE BNE $7A68 ; error
|
||||
7ABA- EA NOP
|
||||
7ABB- BD 8C C0 LDA $C08C,X
|
||||
7ABE- 10 FB BPL $7ABB
|
||||
7AC0- C9 AA CMP #$AA
|
||||
7AC2- D0 A4 BNE $7A68 ; error
|
||||
7AC4- 18 CLC ; res = OK
|
||||
7AC5- 60 RTS
|
||||
; end
|
||||
|
||||
; Seek to half track
|
||||
; Pre: A=half track#, X=slot*16, Y=slot
|
||||
7AC6- 8E 37 7D STX $7D37
|
||||
7AC9- 8D 36 7D STA $7D36
|
||||
7ACC- CD 24 7D CMP $7D24
|
||||
7ACF- F0 5C BEQ $7B2D
|
||||
7AD1- A9 00 LDA #$00
|
||||
7AD3- 8D 38 7D STA $7D38
|
||||
7AD6- AD 24 7D LDA $7D24
|
||||
7AD9- 8D 39 7D STA $7D39
|
||||
7ADC- 38 SEC
|
||||
7ADD- ED 36 7D SBC $7D36
|
||||
7AE0- F0 37 BEQ $7B19
|
||||
7AE2- B0 07 BCS $7AEB
|
||||
7AE4- 49 FF EOR #$FF
|
||||
7AE6- EE 24 7D INC $7D24
|
||||
7AE9- 90 05 BCC $7AF0
|
||||
7AEB- 69 FE ADC #$FE
|
||||
7AED- CE 24 7D DEC $7D24
|
||||
7AF0- CD 38 7D CMP $7D38
|
||||
7AF3- 90 03 BCC $7AF8
|
||||
7AF5- AD 38 7D LDA $7D38
|
||||
7AF8- C9 0C CMP #$0C
|
||||
7AFA- B0 01 BCS $7AFD
|
||||
7AFC- A8 TAY
|
||||
7AFD- 38 SEC
|
||||
7AFE- 20 1D 7B JSR $7B1D
|
||||
7B01- B9 4B 7C LDA $7C4B,Y
|
||||
7B04- 20 3A 7C JSR $7C3A
|
||||
7B07- AD 39 7D LDA $7D39
|
||||
7B0A- 18 CLC
|
||||
7B0B- 20 20 7B JSR $7B20
|
||||
7B0E- B9 57 7C LDA $7C57,Y
|
||||
7B11- 20 3A 7C JSR $7C3A
|
||||
7B14- EE 38 7D INC $7D38
|
||||
7B17- D0 BD BNE $7AD6
|
||||
7B19- 20 3A 7C JSR $7C3A
|
||||
7B1C- 18 CLC
|
||||
7B1D- AD 24 7D LDA $7D24
|
||||
7B20- 29 03 AND #$03
|
||||
7B22- 2A ROL
|
||||
7B23- 0D 37 7D ORA $7D37
|
||||
7B26- AA TAX
|
||||
7B27- BD 80 C0 LDA $C080,X
|
||||
7B2A- AE 37 7D LDX $7D37
|
||||
7B2D- 60 RTS
|
||||
; end
|
||||
|
||||
;
|
||||
; Write gap2, Data field, data
|
||||
;
|
||||
|
||||
7B2E- 20 0E 7D JSR $7D0E
|
||||
7B31- BD 8D C0 LDA $C08D,X
|
||||
7B34- BD 8E C0 LDA $C08E,X
|
||||
|
||||
; Write gap2 (5x 10-bit FF)
|
||||
7B37- A9 FF LDA #$FF
|
||||
7B39- 9D 8F C0 STA $C08F,X
|
||||
7B3C- DD 8C C0 CMP $C08C,X
|
||||
7B3F- 48 PHA
|
||||
7B40- 68 PLA
|
||||
7B41- EA NOP
|
||||
7B42- A0 04 LDY #$04
|
||||
7B44- 48 PHA
|
||||
7B45- 68 PLA
|
||||
7B46- 20 A5 7B JSR $7BA5
|
||||
7B49- 88 DEY
|
||||
7B4A- D0 F8 BNE $7B44
|
||||
|
||||
; Write Data prologue (D5 AA AD)
|
||||
7B4C- A9 D5 LDA #$D5
|
||||
7B4E- 20 A4 7B JSR $7BA4
|
||||
7B51- A9 AA LDA #$AA
|
||||
7B53- 20 A4 7B JSR $7BA4
|
||||
7B56- A9 AD LDA #$AD
|
||||
7B58- 20 A4 7B JSR $7BA4
|
||||
|
||||
; Write 86 x #$96
|
||||
7B5B- A0 56 LDY #$56
|
||||
7B5D- EA NOP
|
||||
7B5E- EA NOP
|
||||
7B5F- EA NOP
|
||||
7B60- D0 03 BNE $7B65
|
||||
7B62- 20 0E 7D JSR $7D0E ; RTS
|
||||
7B65- EA NOP
|
||||
7B66- EA NOP
|
||||
7B67- A9 96 LDA #$96
|
||||
7B69- 9D 8D C0 STA $C08D,X
|
||||
7B6C- DD 8C C0 CMP $C08C,X
|
||||
7B6F- 88 DEY
|
||||
7B70- D0 F0 BNE $7B62
|
||||
|
||||
; Write 256 x #$96
|
||||
7B72- 24 00 BIT $00
|
||||
7B74- EA NOP
|
||||
7B75- 20 0E 7D JSR $7D0E ; RTS
|
||||
7B78- A9 96 LDA #$96
|
||||
7B7A- 9D 8D C0 STA $C08D,X
|
||||
7B7D- DD 8C C0 CMP $C08C,X
|
||||
7B80- A9 96 LDA #$96
|
||||
7B82- EA NOP
|
||||
7B83- C8 INY
|
||||
7B84- D0 EF BNE $7B75
|
||||
|
||||
; Write Data epilogue (DE AA EB FF)
|
||||
7B86- 20 A4 7B JSR $7BA4
|
||||
7B89- A9 DE LDA #$DE
|
||||
7B8B- 20 A4 7B JSR $7BA4
|
||||
7B8E- A9 AA LDA #$AA
|
||||
7B90- 20 A4 7B JSR $7BA4
|
||||
7B93- A9 EB LDA #$EB
|
||||
7B95- 20 A4 7B JSR $7BA4
|
||||
7B98- A9 FF LDA #$FF
|
||||
7B9A- 20 A4 7B JSR $7BA4
|
||||
;
|
||||
7B9D- BD 8E C0 LDA $C08E,X ; read latch (and set read mode)
|
||||
7BA0- BD 8C C0 LDA $C08C,X ; read latch
|
||||
7BA3- 60 RTS
|
||||
|
||||
; Write nibble
|
||||
7BA4- EA NOP
|
||||
; Write nibble
|
||||
7BA5- 48 PHA
|
||||
7BA6- 68 PLA
|
||||
7BA7- 9D 8D C0 STA $C08D,X
|
||||
7BAA- DD 8C C0 CMP $C08C,X
|
||||
7BAD- 60 RTS
|
||||
|
||||
;
|
||||
; Write gap1(sector-0) or gap3 & address field
|
||||
; Pre: X=slot*16, Y=gap count
|
||||
;
|
||||
|
||||
; Check if disk is write enabled
|
||||
7BAE- 38 SEC ; ? (2 cycles)
|
||||
7BAF- BD 8D C0 LDA $C08D,X ; load write protect to latch (b7)
|
||||
7BB2- BD 8E C0 LDA $C08E,X ; read latch (and set read mode)
|
||||
7BB5- 30 5E BMI $7C15 ; branch if write protected
|
||||
|
||||
; Gap1 or Gap3: Initial 10-bit FF sync byte
|
||||
7BB7- A9 FF LDA #$FF
|
||||
7BB9- 9D 8F C0 STA $C08F,X ; set write mode & write data to latch
|
||||
7BBC- DD 8C C0 CMP $C08C,X ; start writing latch (start shifting)
|
||||
7BBF- 48 PHA
|
||||
7BC0- 68 PLA
|
||||
|
||||
; Gap1 or Gap3: 10-bit FF sync byte (40 cycle loop)
|
||||
; Pre: A=#$FF, Y=gap count
|
||||
7BC1- 20 1B 7C JSR $7C1B ; RTS
|
||||
7BC4- 20 1B 7C JSR $7C1B ; RTS
|
||||
7BC7- 9D 8D C0 STA $C08D,X ; write data to latch
|
||||
7BCA- DD 8C C0 CMP $C08C,X ; start writing latch (start shifting)
|
||||
7BCD- EA NOP
|
||||
7BCE- 88 DEY
|
||||
7BCF- D0 F0 BNE $7BC1 ; NB. branch taken cross pages
|
||||
|
||||
; Write address prologue (D5 AA 96)
|
||||
7BD1- A9 D5 LDA #$D5
|
||||
7BD3- 20 2D 7C JSR $7C2D
|
||||
7BD6- A9 AA LDA #$AA
|
||||
7BD8- 20 2D 7C JSR $7C2D
|
||||
7BDB- A9 96 LDA #$96
|
||||
7BDD- 20 2D 7C JSR $7C2D
|
||||
|
||||
; Write address field
|
||||
7BE0- A5 D3 LDA $D3 ; Vol=01
|
||||
7BE2- 20 1C 7C JSR $7C1C
|
||||
7BE5- A5 D1 LDA $D1 ; Trk
|
||||
7BE7- 20 1C 7C JSR $7C1C
|
||||
7BEA- A5 D2 LDA $D2 ; Sec
|
||||
7BEC- 20 1C 7C JSR $7C1C
|
||||
7BEF- A5 D3 LDA $D3
|
||||
7BF1- 45 D1 EOR $D1
|
||||
7BF3- 45 D2 EOR $D2
|
||||
7BF5- 48 PHA ; Chksum
|
||||
7BF6- 4A LSR
|
||||
7BF7- 05 D0 ORA $D0 ; OR with #$AA
|
||||
; write 4&4 chksum in A
|
||||
7BF9- 9D 8D C0 STA $C08D,X
|
||||
7BFC- BD 8C C0 LDA $C08C,X
|
||||
7BFF- 68 PLA
|
||||
7C00- 09 AA ORA #$AA
|
||||
7C02- 20 2C 7C JSR $7C2C
|
||||
|
||||
; write address epilogue (DE AA EB)
|
||||
7C05- A9 DE LDA #$DE
|
||||
7C07- 20 2D 7C JSR $7C2D
|
||||
7C0A- A9 AA LDA #$AA
|
||||
7C0C- 20 2D 7C JSR $7C2D
|
||||
7C0F- A9 EB LDA #$EB
|
||||
7C11- 20 2D 7C JSR $7C2D
|
||||
7C14- 18 CLC
|
||||
7C15- BD 8E C0 LDA $C08E,X
|
||||
7C18- BD 8C C0 LDA $C08C,X
|
||||
7C1B- 60 RTS
|
||||
|
||||
; write 4&4 byte in A
|
||||
7C1C- 48 PHA
|
||||
7C1D- 4A LSR
|
||||
7C1E- 05 D0 ORA $D0
|
||||
7C20- 9D 8D C0 STA $C08D,X
|
||||
7C23- DD 8C C0 CMP $C08C,X
|
||||
7C26- 68 PLA
|
||||
7C27- EA NOP
|
||||
7C28- EA NOP
|
||||
7C29- EA NOP
|
||||
7C2A- 09 AA ORA #$AA
|
||||
7C2C- EA NOP
|
||||
; fall through...
|
||||
|
||||
; 32 cycle write
|
||||
7C2D- EA NOP
|
||||
7C2E- 48 PHA
|
||||
7C2F- 68 PLA
|
||||
7C30- 9D 8D C0 STA $C08D,X
|
||||
7C33- DD 8C C0 CMP $C08C,X
|
||||
7C36- 60 RTS
|
||||
; end
|
||||
|
||||
; ??? (unused)
|
||||
7C37- C8 INY
|
||||
7C38- A0 C3 LDY #$C3
|
||||
; ??? (end)
|
||||
|
||||
; Wait: A * (2 + (5*16) + 5+3+5+2+2+3) = A * 102 cycles (roughly)
|
||||
; Pre: A = wait value
|
||||
7C3A- A2 11 LDX #$11 ; 2cy
|
||||
7C3C- CA DEX ; 2cy
|
||||
7C3D- D0 FD BNE $7C3C ; 2+1 (branch taken)
|
||||
7C3F- E6 D9 INC $D9 ; 5cy / read_trk++
|
||||
7C41- D0 02 BNE $7C45 ; 2+1 (branch taken)
|
||||
7C43- E6 DA INC $DA ; 5cy / read_vol++
|
||||
7C45- 38 SEC ; 2cy
|
||||
7C46- E9 01 SBC #$01 ; 2cy
|
||||
7C48- D0 F0 BNE $7C3A ; 2+1 (branch taken)
|
||||
7C4A- 60 RTS
|
||||
; end
|
||||
|
||||
.data
|
||||
7C4B: ; 12 bytes
|
||||
!byte $01,$30,$28
|
||||
!byte $24,$20,$1E
|
||||
!byte $1D,$1C,$1C
|
||||
!byte $1C,$1C,$1C
|
||||
7C57: ; 12 bytes
|
||||
!byte $70,$2C,$26
|
||||
!byte $22,$1F,$1E
|
||||
!byte $1D,$1C,$1C
|
||||
!byte $1C,$1C,$1C
|
||||
|
||||
.code
|
||||
|
||||
;
|
||||
; Write track and verify track
|
||||
;
|
||||
|
||||
; write gap1 & address field
|
||||
7C63- AD 21 7D LDA $7D21
|
||||
7C66- 85 D6 STA $D6 ; ($D6) = 3 = timeout * 256?
|
||||
;
|
||||
7C68- A0 80 LDY #$80 ; gap1 has gap count = 128
|
||||
7C6A- A9 00 LDA #$00
|
||||
7C6C- 85 D2 STA $D2 ; sector = 0
|
||||
7C6E- 4C 73 7C JMP $7C73
|
||||
|
||||
; write gap3 & address field
|
||||
7C71- A4 D4 LDY $D4 ; gap3_count
|
||||
;
|
||||
7C73- AE 23 7D LDX $7D23 ; slot*16
|
||||
7C76- 20 AE 7B JSR $7BAE ; write gap1|3 & address field
|
||||
7C79- 90 03 BCC $7C7E
|
||||
; error:
|
||||
7C7B- 4C 0E 7D JMP $7D0E
|
||||
; success:
|
||||
; write gap2, data field, data
|
||||
7C7E- AE 23 7D LDX $7D23
|
||||
7C81- 20 2E 7B JSR $7B2E
|
||||
7C84- E6 D2 INC $D2 ; inc write_sector
|
||||
7C86- A5 D2 LDA $D2
|
||||
7C88- C9 10 CMP #$10 ; done 16 sectors?
|
||||
7C8A- 90 E5 BCC $7C71 ; ... no, write next gap3 & sector
|
||||
|
||||
;
|
||||
; verify track
|
||||
;
|
||||
|
||||
7C8C- A0 0F LDY #$0F
|
||||
7C8E- 84 D2 STY $D2 ; write_sector = 15 (used as sector loop counter)
|
||||
7C90- AD 22 7D LDA $7D22 ; A = #$10 (constant)
|
||||
7C93- 8D 25 7D STA $7D25 ; Set retry count = #$10
|
||||
|
||||
; Fill sector_flag struct with #$10
|
||||
7C96- 99 26 7D STA $7D26,Y
|
||||
7C99- 88 DEY
|
||||
7C9A- 10 FA BPL $7C96
|
||||
|
||||
7C9C- A5 D4 LDA $D4 ; gap3_count
|
||||
7C9E- 38 SEC
|
||||
7C9F- E9 05 SBC #$05
|
||||
7CA1- A8 TAY
|
||||
|
||||
; Delay for: (gap3_count-5) * 40 cycles
|
||||
7CA2- 20 0E 7D JSR $7D0E ; 12cy / RTS
|
||||
7CA5- 20 0E 7D JSR $7D0E ; 12cy / RTS
|
||||
7CA8- 48 PHA ; 3
|
||||
7CA9- 68 PLA ; 4
|
||||
7CAA- EA NOP ; 2
|
||||
7CAB- EA NOP ; 2
|
||||
7CAC- 88 DEY ; 2
|
||||
7CAD- D0 F3 BNE $7CA2 ; 3 (taken)
|
||||
; = 40 cycles
|
||||
|
||||
7CAF- AE 23 7D LDX $7D23
|
||||
7CB2- 20 6A 7A JSR $7A6A ; Read address field
|
||||
7CB5- B0 3C BCS $7CF3
|
||||
7CB7- A5 D8 LDA $D8
|
||||
7CB9- F0 13 BEQ $7CCE ; read sector 0?
|
||||
; ... No:
|
||||
7CBB- C6 D4 DEC $D4 ; gap3_count--
|
||||
7CBD- A5 D4 LDA $D4
|
||||
7CBF- CD 1F 7D CMP $7D1F
|
||||
7CC2- B0 2F BCS $7CF3 ; rewrite track
|
||||
7CC4- 38 SEC ; error: gap3_count too small
|
||||
7CC5- 60 RTS
|
||||
|
||||
; Verify next sector
|
||||
7CC6- AE 23 7D LDX $7D23
|
||||
7CC9- 20 6A 7A JSR $7A6A ; Read address field
|
||||
7CCC- B0 1A BCS $7CE8
|
||||
;
|
||||
7CCE- AE 23 7D LDX $7D23
|
||||
7CD1- 20 07 7A JSR $7A07 ; Read sector data
|
||||
7CD4- B0 12 BCS $7CE8
|
||||
7CD6- A4 D8 LDY $D8 ; Y=read sector#
|
||||
7CD8- B9 26 7D LDA $7D26,Y
|
||||
7CDB- 30 0B BMI $7CE8 ; -ve if already read this sector
|
||||
7CDD- A9 FF LDA #$FF
|
||||
7CDF- 99 26 7D STA $7D26,Y ; sector_flag[Y] := #$FF
|
||||
7CE2- C6 D2 DEC $D2 ; write_sector--
|
||||
7CE4- 10 E0 BPL $7CC6
|
||||
7CE6- 18 CLC ; res = OK
|
||||
7CE7- 60 RTS
|
||||
;
|
||||
7CE8- CE 25 7D DEC $7D25 ; retry_count--
|
||||
7CEB- D0 D9 BNE $7CC6
|
||||
7CED- C6 D6 DEC $D6
|
||||
7CEF- D0 02 BNE $7CF3
|
||||
7CF1- 38 SEC ; error (timeout)
|
||||
7CF2- 60 RTS
|
||||
|
||||
; Retry 32 times to read sector #$0F
|
||||
; On success: rewrite track
|
||||
7CF3- AD 22 7D LDA $7D22 ; A = #$10 (constant)
|
||||
7CF6- 0A ASL ; A = #$20
|
||||
7CF7- 8D 25 7D STA $7D25 ; Set retry count = #$20
|
||||
;
|
||||
7CFA- AE 23 7D LDX $7D23
|
||||
7CFD- 20 6A 7A JSR $7A6A ; Read address field
|
||||
7D00- B0 06 BCS $7D08
|
||||
7D02- A5 D8 LDA $D8
|
||||
7D04- C9 0F CMP #$0F ; read sector == #$0F? (ie. last sector on track)
|
||||
7D06- F0 07 BEQ $7D0F ; ... yes: wait & rewrite track
|
||||
7D08- CE 25 7D DEC $7D25
|
||||
7D0B- D0 ED BNE $7CFA
|
||||
7D0D- 38 SEC ; error
|
||||
7D0E- 60 RTS
|
||||
;
|
||||
|
||||
; wait for 214 x 32-cycle nibbles
|
||||
7D0F- A2 D6 LDX #$D6 ; = 214
|
||||
7D11- 20 0E 7D JSR $7D0E ; 12cy / RTS
|
||||
7D14- 20 0E 7D JSR $7D0E ; 12cy / RTS
|
||||
7D17- 24 00 BIT $00 ; 3cy
|
||||
7D19- CA DEX ; 2cy
|
||||
7D1A- D0 F5 BNE $7D11 ; 3cy (2+1taken)
|
||||
; = 32
|
||||
; JMP to Write track and verify track
|
||||
7D1C- 4C 68 7C JMP $7C68
|
||||
; end
|
||||
|
||||
.data
|
||||
7D1F: 0E ; min gap3
|
||||
7D20: 1B ; max gap3 (gap3 >= 0x1B means DRIVE TOO SLOW)
|
||||
7D21: 03 ; timeout * 256
|
||||
7D22: 10 ; a constant
|
||||
7D23: 80 ; slot*10
|
||||
7D24: A0 ; gets init'd to #$50 (80)
|
||||
7D25: A0 ; retry count
|
||||
|
||||
; sector_flag[16]:
|
||||
7D26: A0 B1 C5 A0
|
||||
7D2A: A0 C4 A0 B0
|
||||
7D2E: 80 A0 A0 C3
|
||||
7D32: A0 A0 A0 A0
|
||||
|
||||
7D36: A0
|
||||
7D37: A0
|
||||
7D38: A0
|
||||
7D39: A0
|
||||
|
||||
; Symbol table:
|
||||
D0 kAA
|
||||
D1 w_Track
|
||||
D2 w_Sector
|
||||
D3 w_Volume
|
||||
D4 w_Gap3Count
|
||||
D5 r_Nib96Count
|
||||
D6 r_NibCount1Hi
|
||||
D7 r_Chksum
|
||||
D8 r_Sector
|
||||
D9 r_Track
|
||||
DA r_Volume
|
||||
DB r_TmpChksum
|
||||
DC r_NibCount2Hi
|
||||
DD r_Tmp4and4
|
||||
DE kVolNum01
|
||||
7900 FormatterDiskII
|
||||
7923 SeekTrack
|
||||
793A FormatDisk
|
||||
7982 WriteNextTrack
|
||||
79A2 WriteTrack
|
||||
79B5 CheckGap3Count
|
||||
79CB FindSector00Init
|
||||
79D1 FindSector00Cont
|
||||
79E7 VerifySector
|
||||
79EF NextTrack
|
||||
79F9 Done
|
||||
7A07 ReadSectorData
|
||||
7A6A ReadAddressField
|
||||
7AC6 SeekHalfTrack
|
||||
7B2E WriteGap2AndData
|
||||
7BA4 WriteNibble1a
|
||||
7BA5 WriteNibble1b
|
||||
7BAE CheckWriteProt
|
||||
7BB7 WriteGap0Or3AndAddress
|
||||
7C2C WriteNibble2a
|
||||
7C2D WriteNibble2b
|
||||
7C37 Unused3
|
||||
7C3A WaitA
|
||||
7C4B Data12_1
|
||||
7C57 Data12_2
|
||||
7C63 WriteAndVerifyTrack
|
||||
7C68 WriteGap1AndAddress2
|
||||
7C71 WriteGap3AndAddress
|
||||
7C8C VerifyTrack
|
||||
7C96 ResetSectorFlags
|
||||
7CA2 WaitGap3Count
|
||||
7CBB DecGap3Count
|
||||
7CC6 VerifyNextSector
|
||||
7CCE VerifyNextSector2
|
||||
7CE8 Retry
|
||||
7CF3 Retry2
|
||||
7CFA FindSector0FCont
|
||||
7D0E RTS
|
||||
7D0F RetryWait
|
||||
7D1F kMinGap3
|
||||
7D20 kMaxGap3
|
||||
7D21 kNibCountHi
|
||||
7D22 k10
|
||||
7D23 Slotx16
|
||||
7D24 HalfTrack
|
||||
7D25 RetryCount
|
||||
7D26 SectorFlags
|
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load diff
|
@ -1,7 +0,0 @@
|
|||
Q. Is there a port of AppleWin for Linux?
|
||||
A. In Dec 2007, Beom Beotiger ported AppleWin 1.14.1.2(?). It is available here:
|
||||
http://linapple.sourceforge.net/index.html
|
||||
|
||||
|
||||
Q. Can I run AppleWin on Linux using Wine?
|
||||
A. Reportedly runs fine, but with some sound lag.
|
Binary file not shown.
File diff suppressed because it is too large
Load diff
|
@ -1,257 +0,0 @@
|
|||
No-Slot-Clock (Dallas SmartWatch DS1216) GEOS driver "NoSlot Clock".
|
||||
Partial disassembly and comments by Nick Westgate (and CiderPress).
|
||||
|
||||
Note: This code requires the clock to be in the internal C8 ROM space. (CD or CF ROM sockets.)
|
||||
|
||||
0800- 4C 15 08 JMP $0815 ;read time
|
||||
0803- 4C B8 08 JMP $08B8
|
||||
0806- 4C BC 08 JMP $08BC ;write time
|
||||
0809- 4C E4 08 JMP $08E4
|
||||
080C- 4C F1 08 JMP $08F1
|
||||
080F- 4C 12 08 JMP $0812
|
||||
0812- A2 30 LDX #$30
|
||||
0814- 60 RTS
|
||||
0815- A9 00 LDA #$00
|
||||
0817- 10 37 BPL $0850
|
||||
0819- A9 3B LDA #$3B
|
||||
081B- 8D 16 08 STA $0816
|
||||
081E- 20 6E 08 JSR $086E ;init clock
|
||||
0821- 20 93 08 JSR $0893 ;get clock data byte (0, discard centiseconds)
|
||||
0824- A2 03 LDX #$03 ;(4 bytes)
|
||||
0826- 20 93 08 JSR $0893 ;get clock data byte (1-4 -> F202-F205: day h m s)
|
||||
0829- 9D 02 F2 STA $F202,X
|
||||
082C- CA DEX
|
||||
082D- 10 F7 BPL $0826
|
||||
082F- A2 02 LDX #$02 ;(3 bytes, this overwrites day at F202)
|
||||
0831- 20 93 08 JSR $0893 ;get clock data byte (5-7 -> F200-F202: Y M D)
|
||||
0834- 9D 00 F2 STA $F200,X
|
||||
0837- CA DEX
|
||||
0838- 10 F7 BPL $0831
|
||||
083A- 2C 06 F2 BIT $F206
|
||||
083D- 10 11 BPL $0850
|
||||
083F- AD 03 F2 LDA $F203
|
||||
0842- C9 FF CMP #$FF
|
||||
0844- D0 0A BNE $0850
|
||||
0846- AD 04 F2 LDA $F204
|
||||
0849- C9 FF CMP #$FF
|
||||
084B- D0 03 BNE $0850
|
||||
084D- 4E 06 F2 LSR $F206
|
||||
0850- 4C DB 08 JMP $08DB ;exit safely
|
||||
|
||||
0853- A9 00 LDA #$00 ;*** write 0 byte to clock
|
||||
0855- 84 09 STY $09 ;*** write byte to clock
|
||||
0857- 38 SEC
|
||||
0858- A0 FF LDY #$FF
|
||||
085A- C8 INY
|
||||
085B- E9 0A SBC #$0A
|
||||
085D- 10 FB BPL $085A
|
||||
085F- 69 0A ADC #$0A
|
||||
0861- 85 07 STA $07
|
||||
0863- 98 TYA
|
||||
0864- 0A ASL
|
||||
0865- 0A ASL
|
||||
0866- 0A ASL
|
||||
0867- 0A ASL
|
||||
0868- 05 07 ORA $07
|
||||
086A- A0 00 LDY #$00
|
||||
086C- F0 11 BEQ $087F
|
||||
|
||||
086E- 78 SEI ;*** init clock
|
||||
086F- AD 15 C0 LDA $C015 r:RDCXROM
|
||||
0872- 85 0F STA $0F
|
||||
0874- 8D 07 C0 STA $C007 w:SETINTCXROM
|
||||
0877- AD 04 C8 LDA $C804
|
||||
087A- A0 07 LDY #$07
|
||||
087C- B9 F7 08 LDA $08F7,Y
|
||||
087F- 38 SEC
|
||||
0880- 6A ROR
|
||||
0881- A2 00 LDX #$00
|
||||
0883- 90 02 BCC $0887
|
||||
0885- A2 01 LDX #$01
|
||||
0887- DD 00 C8 CMP $C800,X
|
||||
088A- 4A LSR
|
||||
088B- D0 F4 BNE $0881
|
||||
088D- 88 DEY
|
||||
088E- 10 EC BPL $087C
|
||||
0890- A4 09 LDY $09
|
||||
0892- 60 RTS
|
||||
|
||||
0893- A0 07 LDY #$07 ;*** get clock data byte (convert BCD to hex)
|
||||
0895- AD 04 C8 LDA $C804
|
||||
0898- 6A ROR
|
||||
0899- 66 07 ROR $07
|
||||
089B- 88 DEY
|
||||
089C- 10 F7 BPL $0895
|
||||
089E- A5 07 LDA $07
|
||||
08A0- A8 TAY
|
||||
08A1- 29 0F AND #$0F
|
||||
08A3- 85 07 STA $07
|
||||
08A5- 98 TYA
|
||||
08A6- 4A LSR
|
||||
08A7- 4A LSR
|
||||
08A8- 4A LSR
|
||||
08A9- 4A LSR
|
||||
08AA- 18 CLC
|
||||
08AB- A8 TAY
|
||||
08AC- F0 07 BEQ $08B5
|
||||
08AE- A9 00 LDA #$00
|
||||
08B0- 69 0A ADC #$0A
|
||||
08B2- 88 DEY
|
||||
08B3- D0 FB BNE $08B0
|
||||
08B5- 65 07 ADC $07
|
||||
08B7- 60 RTS
|
||||
08B8- CE 16 08 DEC $0816
|
||||
08BB- 60 RTS
|
||||
|
||||
08BC- 20 6E 08 JSR $086E ;init clock
|
||||
08BF- 20 53 08 JSR $0853 ;write 0 byte to clock
|
||||
08C2- A0 02 LDY #$02
|
||||
08C4- B9 03 00 LDA $0003,Y
|
||||
08C7- 20 55 08 JSR $0855 ;write byte to clock
|
||||
08CA- 88 DEY
|
||||
08CB- 10 F7 BPL $08C4
|
||||
08CD- 20 53 08 JSR $0853 ;write 0 byte to clock
|
||||
08D0- A0 02 LDY #$02
|
||||
08D2- B9 00 00 LDA $0000,Y
|
||||
08D5- 20 55 08 JSR $0855 ;write byte to clock
|
||||
08D8- 88 DEY
|
||||
08D9- 10 F7 BPL $08D2
|
||||
|
||||
08DB- 26 0F ROL $0F ;prepare for exit
|
||||
08DD- B0 03 BCS $08E2
|
||||
08DF- 8D 06 C0 STA $C006 w:SETSLOTCXROM
|
||||
08E2- 58 CLI
|
||||
08E3- 60 RTS
|
||||
|
||||
08E4- A5 00 LDA $00
|
||||
08E6- 8D 43 08 STA $0843
|
||||
08E9- A5 01 LDA $01
|
||||
08EB- 8D 4A 08 STA $084A
|
||||
08EE- A2 80 LDX #$80
|
||||
08F0- 2C A2 00 BIT $00A2
|
||||
08F3- 8E 06 F2 STX $F206
|
||||
08F6- 60 RTS
|
||||
|
||||
08F7- 5C A3 3A C5 5C A3 3A C5 ;*** clock pattern
|
||||
|
||||
08FF- 59
|
||||
0900- FA PLX
|
||||
0901- 88 DEY
|
||||
0902- 10 F8 BPL $08FC
|
||||
0904- 20 B7 5C JSR $5CB7
|
||||
0907- 68 PLA
|
||||
0908- C9 0F CMP #$0F
|
||||
090A- D0 03 BNE $090F
|
||||
090C- 4C 4C 71 JMP $714C
|
||||
090F- C9 80 CMP #$80
|
||||
0911- 90 20 BCC $0933
|
||||
0913- C9 8E CMP #$8E
|
||||
0915- B0 1C BCS $0933
|
||||
0917- 20 D7 65 JSR $65D7
|
||||
091A- C9 81 CMP #$81
|
||||
091C- D0 03 BNE $0921
|
||||
091E- 4C D9 93 JMP $93D9
|
||||
0921- C9 82 CMP #$82
|
||||
0923- F0 04 BEQ $0929
|
||||
0925- C9 8A CMP #$8A
|
||||
0927- D0 03 BNE $092C
|
||||
0929- 4C 6E 71 JMP $716E
|
||||
092C- C9 83 CMP #$83
|
||||
092E- D0 0A BNE $093A
|
||||
0930- 4C 7B 71 JMP $717B
|
||||
0933- C9 FF CMP #$FF
|
||||
0935- D0 03 BNE $093A
|
||||
0937- 4C EA AB JMP $ABEA
|
||||
093A- 20 40 71 JSR $7140
|
||||
093D- A2 00 LDX #$00
|
||||
093F- 60 RTS
|
||||
0940- A9 00 LDA #$00
|
||||
0942- 8D F8 70 STA $70F8
|
||||
0945- A2 72 LDX #$72
|
||||
0947- A9 DB LDA #$DB
|
||||
0949- 4C 08 4D JMP $4D08
|
||||
094C- 20 13 74 JSR $7413
|
||||
094F- A9 00 LDA #$00
|
||||
0951- 85 AA STA $AA
|
||||
0953- 20 91 5D JSR $5D91
|
||||
0956- 20 81 03 JSR $0381
|
||||
0959- 8A TXA
|
||||
095A- F0 03 BEQ $095F
|
||||
095C- 4C 64 5E JMP $5E64
|
||||
095F- A9 00 LDA #$00
|
||||
0961- 85 70 STA $70
|
||||
0963- 68 PLA
|
||||
0964- 68 PLA
|
||||
0965- 20 32 5F JSR $5F32
|
||||
0968- 8A TXA
|
||||
0969- D0 F1 BNE $095C
|
||||
096B- 4C 45 5F JMP $5F45
|
||||
096E- A9 FF LDA #$FF
|
||||
0970- 48 PHA
|
||||
0971- A9 58 LDA #$58
|
||||
0973- 48 PHA
|
||||
0974- A9 00 LDA #$00
|
||||
0976- 85 00 STA $00
|
||||
0978- 4C 8D 03 JMP $038D
|
||||
097B- A9 80 LDA #$80
|
||||
097D- 8D B1 61 STA $61B1
|
||||
0980- 20 D7 4D JSR $4DD7
|
||||
0983- A5 12 LDA $12
|
||||
0985- 18 CLC
|
||||
0986- 69 01 ADC #$01
|
||||
0988- 85 08 STA $08
|
||||
098A- A5 13 LDA $13
|
||||
098C- 69 00 ADC #$00
|
||||
098E- 85 09 STA $09
|
||||
0990- A9 12 LDA #$12
|
||||
0992- 85 07 STA $07
|
||||
0994- A9 85 LDA #$85
|
||||
0996- 85 06 STA $06
|
||||
0998- A2 08 LDX #$08
|
||||
099A- A0 06 LDY #$06
|
||||
099C- 20 61 4D JSR $4D61
|
||||
099F- A9 12 LDA #$12
|
||||
09A1- 85 05 STA $05
|
||||
09A3- A9 71 LDA #$71
|
||||
09A5- 85 04 STA $04
|
||||
09A7- A2 08 LDX #$08
|
||||
09A9- 20 98 64 JSR $6498
|
||||
09AC- A2 08 LDX #$08
|
||||
09AE- A0 04 LDY #$04
|
||||
09B0- A9 0F LDA #$0F
|
||||
09B2- 20 EA FE JSR $FEEA
|
||||
09B5- A9 00 LDA #$00
|
||||
09B7- 8D 80 12 STA $1280
|
||||
09BA- A0 1F LDY #$1F
|
||||
09BC- B1 12 LDA ($12),Y
|
||||
09BE- 85 02 STA $02
|
||||
09C0- C8 INY
|
||||
09C1- B1 12 LDA ($12),Y
|
||||
09C3- 85 03 STA $03
|
||||
09C5- 20 24 66 JSR $6624
|
||||
09C8- F0 0B BEQ $09D5
|
||||
09CA- 20 3C 4E JSR $4E3C
|
||||
09CD- A5 80 LDA $80
|
||||
09CF- 8D 0D F6 STA $F60D
|
||||
09D2- 4C C2 5E JMP $5EC2
|
||||
09D5- AD CE F6 LDA $F6CE
|
||||
09D8- D0 03 BNE $09DD
|
||||
09DA- 4C 40 71 JMP $7140
|
||||
09DD- A9 F6 LDA #$F6
|
||||
09DF- 85 03 STA $03
|
||||
09E1- A9 CE LDA #$CE
|
||||
09E3- 85 02 STA $02
|
||||
09E5- A9 12 LDA #$12
|
||||
09E7- 85 15 STA $15
|
||||
09E9- A9 99 LDA #$99
|
||||
09EB- 85 14 STA $14
|
||||
09ED- A2 02 LDX #$02
|
||||
09EF- A0 14 LDY #$14
|
||||
09F1- A9 0C LDA #$0C
|
||||
09F3- 20 63 4D JSR $4D63
|
||||
09F6- 20 3F 72 JSR $723F
|
||||
09F9- 8A TXA
|
||||
09FA- D0 CE BNE $09CA
|
||||
09FC- AD 21 12 LDA $1221
|
||||
09FF- D0 00 BNE $0A01
|
||||
0A01- 00 BRK
|
|
@ -1,12 +0,0 @@
|
|||
Here's a summary of NSC/ROM chip locations - and which drivers work:
|
||||
|
||||
"CD" ROM socket: C000-DFFF (internal) ROM space - all drivers work
|
||||
"EF" ROM socket: E000-FFFF ROM space - none I've seen yet
|
||||
"CF" ROM socket: C000-FFFF (internal) ROM space - all drivers work
|
||||
Slot ROM socket: Cs00-CsFF (slot) ROM space - NS.CLOCK.SYSTEM works
|
||||
|
||||
And here are the drivers - and ROM pages they check
|
||||
|
||||
ProDOS "SWU.SYSTEM" - internal C3
|
||||
ProDOS "NS.CLOCK.SYSTEM" - internal C3 C8 / external C1-C7
|
||||
GEOS "NoSlot Clock" - internal C8
|
|
@ -1,675 +0,0 @@
|
|||
No-Slot-Clock (Dallas SmartWatch DS1216) ProDOS Driver "NS.CLOCK.SYSTEM".
|
||||
Probably written by Craig Peterson in 1990.
|
||||
Partial disassembly and comments by Nick Westgate (and CiderPress).
|
||||
|
||||
Note: This code checks for the clock in internal C3, C8 and external slot ROM spaces. (CD, CF or slot ROM sockets.)
|
||||
|
||||
2000- 38 SEC ;actually loads at $2000
|
||||
2001- B0 03 BCS $2006
|
||||
2003- 09 23
|
||||
2005- 90
|
||||
2006- A2 05 LDX #$05 ;pages to relocate
|
||||
2008- A0 00 LDY #$00
|
||||
200A- B9 00 20 LDA $2000,Y ;relocate to $1000
|
||||
200D- 99 00 10 STA $1000,Y
|
||||
2010- C8 INY
|
||||
2011- D0 F7 BNE $200A
|
||||
2013- EE 0C 10 INC $100C
|
||||
2016- EE 0F 10 INC $100F
|
||||
2019- CA DEX
|
||||
201A- F0 03 BEQ $201F
|
||||
201C- 4C 0A 10 JMP $100A
|
||||
101F- A9 00 LDA #$00
|
||||
1021- 85 A8 STA $A8
|
||||
1023- AE 80 02 LDX $0280 ;check input buffer for something? (ProDOS path?)
|
||||
1026- F0 1E BEQ $1046
|
||||
1028- E6 A8 INC $A8
|
||||
102A- CA DEX
|
||||
102B- F0 08 BEQ $1035
|
||||
102D- BD 80 02 LDA $0280,X
|
||||
1030- 49 2F EOR #$2F
|
||||
1032- 0A ASL
|
||||
1033- D0 F3 BNE $1028
|
||||
1035- A0 00 LDY #$00
|
||||
1037- C8 INY
|
||||
1038- E8 INX
|
||||
1039- BD 80 02 LDA $0280,X
|
||||
103C- 99 E5 13 STA $13E5,Y
|
||||
103F- C4 A8 CPY $A8
|
||||
1041- 90 F4 BCC $1037
|
||||
1043- 8C E5 13 STY $13E5
|
||||
1046- D8 CLD
|
||||
1047- 2C 82 C0 BIT $C082 ;read LC ROM
|
||||
104A- A9 46 LDA #$46
|
||||
104C- 8D F2 03 STA $03F2 ;reset vector
|
||||
104F- A9 10 LDA #$10
|
||||
1051- 8D F3 03 STA $03F3
|
||||
1054- 49 A5 EOR #$A5
|
||||
1056- 8D F4 03 STA $03F4
|
||||
1059- A9 95 LDA #$95
|
||||
105B- 20 ED FD JSR $FDED F8ROM:COUT
|
||||
105E- A2 FF LDX #$FF
|
||||
1060- 9A TXS
|
||||
1061- 8D 0C C0 STA $C00C w:CLR80VID
|
||||
1064- 8D 0E C0 STA $C00E w:CLRALTCHAR
|
||||
1067- 20 93 FE JSR $FE93 F8ROM:SETVID
|
||||
106A- 20 89 FE JSR $FE89 F8ROM:SETKBD
|
||||
106D- 20 84 FE JSR $FE84 F8ROM:SETNORM
|
||||
1070- 20 2F FB JSR $FB2F F8ROM:INIT
|
||||
1073- A2 17 LDX #$17
|
||||
1075- A9 01 LDA #$01
|
||||
1077- 9D 58 BF STA $BF58,X
|
||||
107A- A9 00 LDA #$00
|
||||
107C- CA DEX
|
||||
107D- D0 F8 BNE $1077
|
||||
107F- A9 CF LDA #$CF
|
||||
1081- 8D 58 BF STA $BF58 ;ProDOS system memory bitmap
|
||||
1084- AD 98 BF LDA $BF98 ;ProDOS machine ID
|
||||
1087- 29 88 AND #$88
|
||||
1089- D0 05 BNE $1090
|
||||
108B- A9 DF LDA #$DF ;II or II+
|
||||
108D- 8D 5B 13 STA $135B
|
||||
1090- AD 98 BF LDA $BF98 ;ProDOS machine ID
|
||||
1093- 29 01 AND #$01 ;check for clock
|
||||
1095- F0 26 BEQ $10BD
|
||||
1097- 20 58 FC JSR $FC58 F8ROM:HOME
|
||||
109A- 20 19 13 JSR $1319 ;print
|
||||
109D- 8D D0 F2 ;Previous Clock Installed!
|
||||
10A0- E5 F6 E9 EF F5 F3 A0 C3
|
||||
10A8- EC EF E3 EB A0 C9 EE F3
|
||||
10B0- F4 E1 EC EC E5 E4 A1 87
|
||||
10B8- 8D 00
|
||||
10BA- 4C 1F 12 JMP $121F ;exit
|
||||
|
||||
10BD- A0 03 LDY #$03
|
||||
10BF- B9 90 BF LDA $BF90,Y ;backup ProDOS date/time
|
||||
10C2- 99 97 11 STA $1197,Y
|
||||
10C5- 88 DEY
|
||||
10C6- 10 F7 BPL $10BF
|
||||
10C8- A9 CF LDA #$CF ;prepare to check slot ROM
|
||||
10CA- A0 FF LDY #$FF
|
||||
10CC- 8D F9 13 STA $13F9 ;(LDA $CFFF)
|
||||
10CF- 8C F8 13 STY $13F8
|
||||
10D2- 8D 66 14 STA $1466 ;(STA $CFFF)
|
||||
10D5- 8C 65 14 STY $1465
|
||||
10D8- A9 00 LDA #$00 ;slot (3, 1..7, C8 internal)
|
||||
10DA- 8D 9C 11 STA $119C ;count?
|
||||
10DD- A9 03 LDA #$03
|
||||
10DF- 09 C0 ORA #$C0
|
||||
10E1- 8D FD 13 STA $13FD ;(STA $CX00)
|
||||
10E4- 8D 00 14 STA $1400 ;(LDA $CX04)
|
||||
10E7- 8D 0F 14 STA $140F ;(LDA $CX00,Y)
|
||||
10EA- 8D 1D 14 STA $141D ;(LDA $CX04)
|
||||
10ED- A9 03 LDA #$03 ;try to init 3 times
|
||||
10EF- 8D 9B 11 STA $119B
|
||||
10F2- 20 F5 13 JSR $13F5 ;init clock and get date/time
|
||||
10F5- AD 91 BF LDA $BF91 ;ProDOS date/time updated?
|
||||
10F8- 6A ROR
|
||||
10F9- AD 90 BF LDA $BF90
|
||||
10FC- 2A ROL
|
||||
10FD- 2A ROL
|
||||
10FE- 2A ROL
|
||||
10FF- 2A ROL
|
||||
1100- 29 0F AND #$0F
|
||||
1102- F0 24 BEQ $1128
|
||||
1104- C9 0D CMP #$0D
|
||||
1106- B0 20 BCS $1128
|
||||
1108- AD 90 BF LDA $BF90
|
||||
110B- 29 1F AND #$1F
|
||||
110D- F0 19 BEQ $1128
|
||||
110F- C9 20 CMP #$20
|
||||
1111- B0 15 BCS $1128
|
||||
1113- AD 93 BF LDA $BF93
|
||||
1116- C9 18 CMP #$18
|
||||
1118- B0 0E BCS $1128
|
||||
111A- AD 92 BF LDA $BF92
|
||||
111D- C9 3C CMP #$3C
|
||||
111F- B0 07 BCS $1128
|
||||
1121- CE 9B 11 DEC $119B
|
||||
1124- D0 CC BNE $10F2 ;not updated: try to init again (3 times)
|
||||
1126- F0 75 BEQ $119D
|
||||
1128- EE 9C 11 INC $119C ;next slot
|
||||
112B- AD 9C 11 LDA $119C
|
||||
112E- C9 08 CMP #$08
|
||||
1130- 90 AD BCC $10DF
|
||||
1132- D0 1D BNE $1151 ;loop for slots 3, 1..7
|
||||
1134- A9 C0 LDA #$C0 ;prepare to check internal C8 ROM (where is this called from?)
|
||||
1136- A0 15 LDY #$15
|
||||
1138- 8D F9 13 STA $13F9
|
||||
113B- 8C F8 13 STY $13F8 ;(LDA $C015)
|
||||
113E- A0 07 LDY #$07
|
||||
1140- 8D FD 13 STA $13FD ;(STA $C007)
|
||||
1143- 8C FC 13 STY $13FC
|
||||
1146- 88 DEY
|
||||
1147- 8D 66 14 STA $1466 ;(STA $C006)
|
||||
114A- 8C 65 14 STY $1465
|
||||
114D- A9 C8 LDA #$C8
|
||||
114F- D0 93 BNE $10E4 ;set up addresses for internal C8 ROM and test
|
||||
|
||||
1151- A0 03 LDY #$03 ;SmartWatch not found
|
||||
1153- B9 97 11 LDA $1197,Y ;restore ProDOS date/time
|
||||
1156- 99 90 BF STA $BF90,Y
|
||||
1159- 88 DEY
|
||||
115A- 10 F7 BPL $1153
|
||||
115C- 20 58 FC JSR $FC58 F8ROM:HOME
|
||||
115F- 20 19 13 JSR $1319 ;print
|
||||
1162- 8D CE EF AD D3 CC ;No-SLot Clock Not Found...Clock Not Installed
|
||||
1168- EF F4 A0 C3 EC EF E3 EB
|
||||
1170- A0 CE EF F4 A0 C6 EF F5
|
||||
1178- EE E4 AE 8D 8D C3 EC EF
|
||||
1180- E3 EB A0 CE EF F4 A0 C9
|
||||
1188- EE F3 F4 E1 EC EC E5 E4
|
||||
1190- A1 87 8D 00
|
||||
1194- 4C 1F 12 JMP $121F ;exit
|
||||
|
||||
1197- 00 ;ProDOS date/time
|
||||
1198- 00
|
||||
1199- 00
|
||||
119A- 00
|
||||
119B- 03 ???
|
||||
119C- 00 BRK
|
||||
119D- AD 07 BF LDA $BF07 ;success: install driver
|
||||
11A0- 85 A5 STA $A5
|
||||
11A2- 18 CLC
|
||||
11A3- 69 73 ADC #$73
|
||||
11A5- 8D 04 14 STA $1404
|
||||
11A8- AD 08 BF LDA $BF08
|
||||
11AB- 85 A6 STA $A6
|
||||
11AD- 69 00 ADC #$00
|
||||
11AF- 8D 05 14 STA $1405
|
||||
11B2- AD 8B C0 LDA $C08B rw:LCBANK1
|
||||
11B5- AD 8B C0 LDA $C08B rw:LCBANK1
|
||||
11B8- A0 7C LDY #$7C
|
||||
11BA- B9 F5 13 LDA $13F5,Y
|
||||
11BD- 91 A5 STA ($A5),Y
|
||||
11BF- 88 DEY
|
||||
11C0- 10 F8 BPL $11BA
|
||||
11C2- AD 98 BF LDA $BF98
|
||||
11C5- 09 01 ORA #$01
|
||||
11C7- 8D 98 BF STA $BF98
|
||||
11CA- A9 4C LDA #$4C
|
||||
11CC- 8D 06 BF STA $BF06
|
||||
11CF- 20 06 BF JSR $BF06
|
||||
11D2- 2C 82 C0 BIT $C082
|
||||
11D5- 20 58 FC JSR $FC58 F8ROM:HOME
|
||||
11D8- 20 19 13 JSR $1319 ;print
|
||||
11DB- 8D CE EF AD D3 ;No-Slot Clock Installed
|
||||
11E0- EC EF F4 A0 C3 EC EF E3
|
||||
11E8- EB A0 C9 EE F3 F4 E1 EC
|
||||
11F0- EC E5 E4 A0 A0 00
|
||||
11F6- AD 91 BF LDA $BF91
|
||||
11F9- 6A ROR
|
||||
11FA- 48 PHA
|
||||
11FB- AD 90 BF LDA $BF90
|
||||
11FE- 48 PHA
|
||||
11FF- 2A ROL
|
||||
1200- 2A ROL
|
||||
1201- 2A ROL
|
||||
1202- 2A ROL
|
||||
1203- 29 0F AND #$0F
|
||||
1205- 20 3E 13 JSR $133E
|
||||
1208- A9 AF LDA #$AF
|
||||
120A- 20 ED FD JSR $FDED F8ROM:COUT
|
||||
120D- 68 PLA
|
||||
120E- 29 1F AND #$1F
|
||||
1210- 20 3E 13 JSR $133E
|
||||
1213- A9 AF LDA #$AF
|
||||
1215- 20 ED FD JSR $FDED F8ROM:COUT
|
||||
1218- 68 PLA
|
||||
1219- 20 3E 13 JSR $133E
|
||||
121C- 20 8E FD JSR $FD8E F8ROM:CROUT
|
||||
121F- A9 5C LDA #$5C ;*** exit routine
|
||||
1221- 8D F2 03 STA $03F2
|
||||
1224- A9 13 LDA #$13
|
||||
1226- 8D F3 03 STA $03F3
|
||||
1229- 49 A5 EOR #$A5
|
||||
122B- 8D F4 03 STA $03F4
|
||||
122E- AD 30 BF LDA $BF30
|
||||
1231- 8D 75 13 STA $1375
|
||||
1234- 20 6B 13 JSR $136B
|
||||
1237- AD 23 18 LDA $1823
|
||||
123A- 8D 88 12 STA $1288
|
||||
123D- AD 24 18 LDA $1824
|
||||
1240- 8D 94 12 STA $1294
|
||||
1243- A9 01 LDA #$01
|
||||
1245- 85 A7 STA $A7
|
||||
1247- A9 2B LDA #$2B
|
||||
1249- 85 A5 STA $A5
|
||||
124B- A9 18 LDA #$18
|
||||
124D- 85 A6 STA $A6
|
||||
124F- A0 10 LDY #$10
|
||||
1251- B1 A5 LDA ($A5),Y
|
||||
1253- C9 FF CMP #$FF
|
||||
1255- D0 2D BNE $1284
|
||||
1257- A0 00 LDY #$00
|
||||
1259- B1 A5 LDA ($A5),Y
|
||||
125B- 29 30 AND #$30
|
||||
125D- F0 25 BEQ $1284
|
||||
125F- B1 A5 LDA ($A5),Y
|
||||
1261- 29 0F AND #$0F
|
||||
1263- 85 A8 STA $A8
|
||||
1265- A8 TAY
|
||||
1266- A2 06 LDX #$06
|
||||
1268- B1 A5 LDA ($A5),Y
|
||||
126A- DD DE 13 CMP $13DE,X
|
||||
126D- D0 15 BNE $1284
|
||||
126F- 88 DEY
|
||||
1270- CA DEX
|
||||
1271- 10 F5 BPL $1268
|
||||
1273- AC E5 13 LDY $13E5
|
||||
1276- C4 A8 CPY $A8
|
||||
1278- D0 40 BNE $12BA
|
||||
127A- B1 A5 LDA ($A5),Y
|
||||
127C- D9 E5 13 CMP $13E5,Y
|
||||
127F- D0 39 BNE $12BA
|
||||
1281- 88 DEY
|
||||
1282- D0 F6 BNE $127A
|
||||
1284- A5 A5 LDA $A5
|
||||
1286- 18 CLC
|
||||
1287- 69 27 ADC #$27
|
||||
1289- 85 A5 STA $A5
|
||||
128B- 90 02 BCC $128F
|
||||
128D- E6 A6 INC $A6
|
||||
128F- E6 A7 INC $A7
|
||||
1291- A5 A7 LDA $A7
|
||||
1293- C9 0D CMP #$0D
|
||||
1295- 90 B8 BCC $124F
|
||||
1297- AD 02 18 LDA $1802
|
||||
129A- 8D 78 13 STA $1378
|
||||
129D- AD 03 18 LDA $1803
|
||||
12A0- 8D 79 13 STA $1379
|
||||
12A3- 0D 78 13 ORA $1378
|
||||
12A6- F0 35 BEQ $12DD
|
||||
12A8- 20 6B 13 JSR $136B
|
||||
12AB- A9 00 LDA #$00
|
||||
12AD- 85 A7 STA $A7
|
||||
12AF- A9 04 LDA #$04
|
||||
12B1- 85 A5 STA $A5
|
||||
12B3- A9 18 LDA #$18
|
||||
12B5- 85 A6 STA $A6
|
||||
12B7- 4C 4F 12 JMP $124F
|
||||
12BA- AE 80 02 LDX $0280
|
||||
12BD- F0 0B BEQ $12CA
|
||||
12BF- CA DEX
|
||||
12C0- F0 08 BEQ $12CA
|
||||
12C2- BD 80 02 LDA $0280,X
|
||||
12C5- 49 2F EOR #$2F
|
||||
12C7- 0A ASL
|
||||
12C8- D0 F5 BNE $12BF
|
||||
12CA- A0 00 LDY #$00
|
||||
12CC- C8 INY
|
||||
12CD- E8 INX
|
||||
12CE- B1 A5 LDA ($A5),Y
|
||||
12D0- 9D 80 02 STA $0280,X
|
||||
12D3- C4 A8 CPY $A8
|
||||
12D5- 90 F5 BCC $12CC
|
||||
12D7- 8E 80 02 STX $0280
|
||||
12DA- 4C 7A 13 JMP $137A
|
||||
12DD- 20 19 13 JSR $1319 ;print
|
||||
12E0- 8D 8D 8D AA A0 D5 EE E1 ;...* Unable to find next '.SYSTEM' file
|
||||
12E8- E2 EC E5 A0 F4 EF A0 E6
|
||||
12F0- E9 EE E4 A0 EE E5 F8 F4
|
||||
12F8- A0 A7 AE D3 D9 D3 D4 C5
|
||||
1300- CD A7 A0 E6 E9 EC E5 A0
|
||||
1308- AA 8D 00
|
||||
130B- 2C 10 C0 BIT $C010
|
||||
130E- AD 00 C0 LDA $C000 r:KBD w:CLR80COL
|
||||
1311- 10 FB BPL $130E
|
||||
1313- 2C 10 C0 BIT $C010 r:KBDSTRB
|
||||
1316- 4C 5C 13 JMP $135C ;exit
|
||||
|
||||
1319- 68 PLA ;*** print routine (text follows JSR)
|
||||
131A- 85 A5 STA $A5
|
||||
131C- 68 PLA
|
||||
131D- 85 A6 STA $A6
|
||||
131F- D0 0A BNE $132B
|
||||
1321- C9 E1 CMP #$E1
|
||||
1323- 90 03 BCC $1328
|
||||
1325- 2D 5B 13 AND $135B
|
||||
1328- 20 ED FD JSR $FDED F8ROM:COUT
|
||||
132B- E6 A5 INC $A5
|
||||
132D- D0 02 BNE $1331
|
||||
132F- E6 A6 INC $A6
|
||||
1331- A0 00 LDY #$00
|
||||
1333- B1 A5 LDA ($A5),Y
|
||||
1335- D0 EA BNE $1321
|
||||
1337- A5 A6 LDA $A6
|
||||
1339- 48 PHA
|
||||
133A- A5 A5 LDA $A5
|
||||
133C- 48 PHA
|
||||
133D- 60 RTS
|
||||
133E- A2 B0 LDX #$B0
|
||||
1340- C9 0A CMP #$0A
|
||||
1342- 90 07 BCC $134B
|
||||
1344- E9 0A SBC #$0A
|
||||
1346- E8 INX
|
||||
1347- C9 0A CMP #$0A
|
||||
1349- B0 F9 BCS $1344
|
||||
134B- 48 PHA
|
||||
134C- E0 B0 CPX #$B0
|
||||
134E- F0 04 BEQ $1354
|
||||
1350- 8A TXA
|
||||
1351- 20 ED FD JSR $FDED F8ROM:COUT
|
||||
1354- 68 PLA
|
||||
1355- 09 B0 ORA #$B0
|
||||
1357- 20 ED FD JSR $FDED F8ROM:COUT
|
||||
135A- 60 RTS
|
||||
135B- FF ??? ;or DF
|
||||
135C- 20 00 BF JSR $BF00 P8:QUIT(4:Type/1,Path,zz/1,zz)
|
||||
135F- 65 $65
|
||||
1360- 64 13 $1364
|
||||
1362- 00 BRK
|
||||
1363- 60 RTS
|
||||
1364- 04 00 TSB $00
|
||||
1366- 00 BRK
|
||||
1367- 00 BRK
|
||||
1368- 00 BRK
|
||||
1369- 00 BRK
|
||||
136A- 00 BRK
|
||||
136B- 20 00 BF JSR $BF00 P8:READ_BLOCK(3:Unit/1,Buff,BlkNum)
|
||||
136E- 80 $80
|
||||
136F- 74 13 $1374
|
||||
1371- B0 28 BCS $139B ;disk error
|
||||
1373- 60 RTS
|
||||
1374- 03 ???
|
||||
1375- 60 RTS
|
||||
1376- 00 BRK
|
||||
1377- 18 CLC
|
||||
1378- 02 ???
|
||||
1379- 00 BRK
|
||||
137A- 20 00 BF JSR $BF00 P8:OPEN(3:pn,ioBuff,Ref/1)
|
||||
137D- C8 $C8
|
||||
137E- CE 13 $13CE
|
||||
1380- B0 19 BCS $139B
|
||||
1382- AD D3 13 LDA $13D3
|
||||
1385- 8D D5 13 STA $13D5
|
||||
1388- 20 00 BF JSR $BF00 P8:READ(4:Ref/1,Where,reqCount,xfrCount)
|
||||
138B- CA $CA
|
||||
138C- D4 13 $13D4
|
||||
138E- B0 0B BCS $139B
|
||||
1390- 20 00 BF JSR $BF00 P8:CLOSE(1:Ref/1)
|
||||
1393- CC $CC
|
||||
1394- DC 13 $13DC
|
||||
1396- B0 03 BCS $139B
|
||||
1398- 4C 00 20 JMP $1000
|
||||
139B- 48 PHA
|
||||
139C- 20 19 13 JSR $1319 ;print
|
||||
139F- 8D ;...** Disk Error $
|
||||
13A0- 8D 8D AA AA A0 A0 C4 E9
|
||||
13A8- F3 EB A0 C5 F2 F2 EF F2
|
||||
13B0- A0 A4 00
|
||||
13B3- 68 PLA
|
||||
13B4- 20 DA FD JSR $FDDA F8ROM:PRBYTE
|
||||
13B7- 20 19 13 JSR $1319 ;print
|
||||
13BA- A0 A0 AA AA 8D 00 ; **.
|
||||
13C0- 2C 10 C0 BIT $C010
|
||||
13C3- AD 00 C0 LDA $C000 r:KBD w:CLR80COL
|
||||
13C6- 10 FB BPL $13C3
|
||||
13C8- 2C 10 C0 BIT $C010 r:KBDSTRB
|
||||
13CB- 4C 5C 13 JMP $135C
|
||||
13CE- 03 ???
|
||||
13CF- 80 02 BRA $13D3
|
||||
13D1- 00 BRK
|
||||
13D2- 18 CLC
|
||||
13D3- 01 04 ORA ($04,X)
|
||||
13D5- 01 00 ORA ($00,X)
|
||||
13D7- 20 FF FF JSR $FFFF
|
||||
13DA- 00 BRK
|
||||
13DB- 00 BRK
|
||||
13DC- 01 00 ORA ($00,X)
|
||||
13DE- 2E 53 59 ROL $5953
|
||||
13E1- 53 ???
|
||||
13E2- 54 ???
|
||||
13E3- 45 4D EOR $4D
|
||||
13E5- 0F ;length
|
||||
13E6- 4E 53 2E ;copied from input buffer (path?)
|
||||
13E9- 43
|
||||
13EA- 4C 4F 43
|
||||
13ED- 4B ...
|
||||
13EE- 2E 53 59 ROL $5953
|
||||
13F1- 53 ???
|
||||
13F2- 54 ???
|
||||
13F3- 45 4D EOR $4D
|
||||
|
||||
13F5- 08 PHP ;*** clock init and get time
|
||||
13F6- 78 SEI
|
||||
13F7- AD FF CF LDA $CFFF rw:CLRROM
|
||||
13FA- 48 PHA
|
||||
13FB- 8D 00 C3 STA $C300 ;switch in CX00 slot/C8 ROM? (calling code sets CX from here on)
|
||||
13FE- AD 04 C3 LDA $C304 ;reset the comparison register pointer (A2 high = SmartWatch read)
|
||||
1401- A2 08 LDX #$08
|
||||
1403- BD 68 14 LDA $1468,X ;get SmartWatch comparison register pattern bytes
|
||||
1406- 38 SEC ;mark end of byte
|
||||
1407- 6A ROR ;low bits first
|
||||
1408- 48 PHA
|
||||
1409- A9 00 LDA #$00
|
||||
140B- 2A ROL
|
||||
140C- A8 TAY
|
||||
140D- B9 00 C3 LDA $C300,Y ;write data bit on A0 (A2 low = SmartWatch write)
|
||||
1410- 68 PLA
|
||||
1411- 4A LSR
|
||||
1412- D0 F4 BNE $1408
|
||||
1414- CA DEX
|
||||
1415- D0 EC BNE $1403
|
||||
1417- A2 08 LDX #$08 ;read registers (date/time)
|
||||
1419- A0 08 LDY #$08
|
||||
141B- AD 04 C3 LDA $C304 ;read data bit on D0 (A2 high = SmartWatch read)
|
||||
141E- 6A ROR
|
||||
141F- 7E FF 01 ROR $01FF,X ;copy data to input buffer
|
||||
1422- 88 DEY
|
||||
1423- D0 F6 BNE $141B
|
||||
1425- BD FF 01 LDA $01FF,X
|
||||
1428- 4A LSR
|
||||
1429- 4A LSR
|
||||
142A- 4A LSR
|
||||
142B- 4A LSR
|
||||
142C- A8 TAY
|
||||
142D- F0 0E BEQ $143D
|
||||
142F- BD FF 01 LDA $01FF,X
|
||||
1432- 29 0F AND #$0F
|
||||
1434- 18 CLC
|
||||
1435- 69 0A ADC #$0A
|
||||
1437- 88 DEY
|
||||
1438- D0 FB BNE $1435
|
||||
143A- 9D FF 01 STA $01FF,X
|
||||
143D- CA DEX
|
||||
143E- D0 D9 BNE $1419
|
||||
1440- AD 04 02 LDA $0204 ;copy data to ProDOS date/time
|
||||
1443- 8D 93 BF STA $BF93
|
||||
1446- AD 05 02 LDA $0205
|
||||
1449- 8D 92 BF STA $BF92
|
||||
144C- AD 01 02 LDA $0201
|
||||
144F- 0A ASL
|
||||
1450- 0A ASL
|
||||
1451- 0A ASL
|
||||
1452- 0A ASL
|
||||
1453- 0A ASL
|
||||
1454- 0D 02 02 ORA $0202
|
||||
1457- 8D 90 BF STA $BF90
|
||||
145A- AD 00 02 LDA $0200
|
||||
145D- 2A ROL
|
||||
145E- 8D 91 BF STA $BF91
|
||||
1461- 68 PLA
|
||||
1462- 30 03 BMI $1467
|
||||
1464- 8D FF CF STA $CFFF rw:CLRROM ;restore ROM status (hmm)
|
||||
1467- 28 PLP
|
||||
1468- 60 RTS
|
||||
|
||||
1469- 5C A3 3A C5 5C A3 3A C5 ;*** clock pattern
|
||||
|
||||
1471- 00
|
||||
1472- B3 ???
|
||||
1473- 74 F5 STZ $F5,X
|
||||
1475- D3 ???
|
||||
1476- 6D E0 68 ADC $68E0
|
||||
1479- 7D DD BB ADC $BBDD,X
|
||||
147C- 20 2F 52 JSR $522F
|
||||
147F- 41 4D EOR ($4D,X)
|
||||
1481- 20 8D 00 JSR $008D
|
||||
1484- F3 ???
|
||||
1485- 20 E1 AA JSR $AAE1
|
||||
1488- 68 PLA
|
||||
1489- B0 13 BCS $149E
|
||||
148B- 6D DD BB ADC $BBDD
|
||||
148E- 8D DD 20 STA $10DD
|
||||
1491- 2F ???
|
||||
1492- 43 ???
|
||||
1493- 54 ???
|
||||
1494- 2E 31 20 ROL $1031
|
||||
1497- 8D 00 EE STA $EE00
|
||||
149A- DF ???
|
||||
149B- BB ???
|
||||
149C- D0 03 BNE $14A1
|
||||
149E- A9 FF LDA #$FF
|
||||
14A0- 38 SEC
|
||||
14A1- 60 RTS
|
||||
14A2- C9 30 CMP #$30
|
||||
14A4- 20 2F 48 JSR $482F
|
||||
14A7- 41 52 EOR ($52,X)
|
||||
14A9- 44 ???
|
||||
14AA- 31 20 AND ($10),Y
|
||||
14AC- 8D 00 C9 STA $C900
|
||||
14AF- 47 ???
|
||||
14B0- 90 04 BCC $14B6
|
||||
14B2- 38 SEC
|
||||
14B3- 09 00 ORA #$00
|
||||
14B5- 60 RTS
|
||||
14B6- E9 06 SBC #$06
|
||||
14B8- 20 2F 52 JSR $522F
|
||||
14BB- 41 4D EOR ($4D,X)
|
||||
14BD- 20 8D 00 JSR $008D
|
||||
14C0- DD CA 10 CMP $10CA,X
|
||||
14C3- F8 SED
|
||||
14C4- 0D DD BB ORA $BBDD
|
||||
14C7- 8D DD BB STA $BBDD
|
||||
14CA- 60 RTS
|
||||
14CB- 0E 0E 2F ASL $1F0E
|
||||
14CE- 4E 4F 2E LSR $1E4F
|
||||
14D1- 53 ???
|
||||
14D2- 4C 4F 54 JMP $544F
|
||||
14D5- 2E 43 4C ROL $4C43
|
||||
14D8- 4F ???
|
||||
14D9- 43 ???
|
||||
14DA- 4B ???
|
||||
14DB- 20 8D 00 JSR $008D
|
||||
14DE- 2D D0 08 AND $08D0
|
||||
14E1- EE 53 BE INC $BE53
|
||||
14E4- 8D 52 BE STA $BE52
|
||||
14E7- D0 1D BNE $1506
|
||||
14E9- A0 08 LDY #$08
|
||||
14EB- 8C 52 BE STY $BE52
|
||||
14EE- BD 97 B8 LDA $B897,X
|
||||
14F1- 10 06 BPL $14F9
|
||||
14F3- 29 7F AND #$7F
|
||||
14F5- 88 DEY
|
||||
14F6- CE 52 BE DEC $BE52
|
||||
14F9- AA TAX
|
||||
14FA- B9 EB BB LDA $BBEB,Y
|
||||
14FD- DD B7 B8 CMP $B8B7,X
|
||||
1500- D0 17 BNE $1519
|
||||
1502- CA DEX
|
||||
1503- 88 DEY
|
||||
1504- 10 F4 BPL $14FA
|
||||
1506- AD 53 BE LDA $BE53
|
||||
1509- 0A ASL
|
||||
150A- AA TAX
|
||||
150B- BD 69 B9 LDA $B969,X
|
||||
150E- 8D 55 BE STA $BE55
|
||||
1511- BD 68 B9 LDA $B968,X
|
||||
1514- 8D 54 BE STA $BE54
|
||||
1517- 18 CLC
|
||||
1518- 60 RTS
|
||||
1519- AC 52 BE LDY $BE52
|
||||
151C- CE 53 BE DEC $BE53
|
||||
151F- AE 53 BE LDX $BE53
|
||||
1522- D0 CA BNE $14EE
|
||||
1524- CE 53 BE DEC $BE53
|
||||
1527- 38 SEC
|
||||
1528- 4C 06 BE JMP $BE06
|
||||
152B- A0 00 LDY #$00
|
||||
152D- 8C DD BB STY $BBDD
|
||||
1530- 8C DE BB STY $BBDE
|
||||
1533- 8C DF BB STY $BBDF
|
||||
1536- 60 RTS
|
||||
1537- AD B8 BE LDA $BEB8
|
||||
153A- C9 FC CMP #$FC
|
||||
153C- F0 68 BEQ $15A6
|
||||
153E- C9 06 CMP #$06
|
||||
1540- F0 3F BEQ $1581
|
||||
1542- C9 04 CMP #$04
|
||||
1544- D0 03 BNE $1549
|
||||
1546- 4C 60 B2 JMP $B260
|
||||
1549- C9 FF CMP #$FF
|
||||
154B- F0 04 BEQ $1551
|
||||
154D- A9 0D LDA #$0D
|
||||
154F- 38 SEC
|
||||
1550- 60 RTS
|
||||
1551- 20 31 B5 JSR $B531
|
||||
1554- 20 3A B3 JSR $B33A
|
||||
1557- A9 00 LDA #$00
|
||||
1559- 8D 58 BE STA $BE58
|
||||
155C- 8D 6B BF STA $BF6B
|
||||
155F- 8D 6C BF STA $BF6C
|
||||
1562- 8D 6D BF STA $BF6D
|
||||
1565- 8D 6E BF STA $BF6E
|
||||
1568- A9 01 LDA #$01
|
||||
156A- 8D 6F BF STA $BF6F
|
||||
156D- A9 20 LDA #$20
|
||||
156F- 8D 59 BE STA $BE59
|
||||
1572- A9 FF LDA #$FF
|
||||
1574- 8D 6A BE STA $BE6A
|
||||
1577- A9 80 LDA #$80
|
||||
1579- 8D 57 BE STA $BE57
|
||||
157C- A9 05 LDA #$05
|
||||
157E- 8D 56 BE STA $BE56
|
||||
1581- 4C 20 AE JMP $AE20
|
||||
1584- 20 0D A4 JSR $A40D
|
||||
1587- A5 74 LDA $74
|
||||
1589- 8D A9 BB STA $BBA9
|
||||
158C- AE BD BB LDX $BBBD
|
||||
158F- CA DEX
|
||||
1590- 86 74 STX $74
|
||||
1592- 20 0D AC JSR $AC0D
|
||||
1595- AE A9 BB LDX $BBA9
|
||||
1598- 86 74 STX $74
|
||||
159A- B0 6C BCS $1608
|
||||
159C- 20 65 D6 JSR $D665
|
||||
159F- 20 7C A4 JSR $A47C
|
||||
15A2- A9 00 LDA #$00
|
||||
15A4- F0 15 BEQ $15BB
|
||||
15A6- A9 00 LDA #$00
|
||||
15A8- 8D 44 BE STA $BE44
|
||||
15AB- 85 DE STA $DE
|
||||
15AD- AD 56 BE LDA $BE56
|
||||
15B0- 4A LSR
|
||||
15B1- 90 16 BCC $15C9
|
||||
15B3- 20 08 AC JSR $AC08
|
||||
15B6- B0 50 BCS $1608
|
||||
15B8- 20 65 D6 JSR $D665
|
||||
15BB- 85 D8 STA $D8
|
||||
15BD- 20 A1 AC JSR $ACA1
|
||||
15C0- 20 8D 9A JSR $9A8D
|
||||
15C3- 20 DF AB JSR $ABDF
|
||||
15C6- 4C D2 D7 JMP $D7D2
|
||||
15C9- 20 73 F2 JSR $F273
|
||||
15CC- A9 A3 LDA #$A3
|
||||
15CE- 8D 61 9F STA $9F61
|
||||
15D1- A9 FF LDA #$FF
|
||||
15D3- 8D 53 BE STA $BE53
|
||||
15D6- 85 33 STA $33
|
||||
15D8- A2 04 LDX #$04
|
||||
15DA- 20 76 9F JSR $9F76
|
||||
15DD- 4C 43 A8 JMP $A843
|
||||
15E0- 20 08 AC JSR $AC08
|
||||
15E3- B0 23 BCS $1608
|
||||
15E5- 20 65 D6 JSR $D665
|
||||
15E8- 20 17 9A JSR $9A17
|
||||
15EB- A9 00 LDA #$00
|
||||
15ED- 85 24 STA $24
|
||||
15EF- 4C 3F D4 JMP $D43F
|
||||
15F2- 20 31 B5 JSR $B531
|
||||
15F5- B0 11 BCS $1608
|
||||
15F7- 20 1F AC JSR $AC1F
|
||||
15FA- B0 0C BCS $1608
|
||||
15FC- 84 6B STY $6B
|
||||
15FE- 84 69 STY $69
|
|
@ -1,104 +0,0 @@
|
|||
Key Super Serial Card (SSC) Memory Locations for Programmers
|
||||
------------------------------------------------------------
|
||||
|
||||
All addresses are of the form '$C0sx', where 's' is the Slot number
|
||||
of the SSC plus $8 and 'x' is the final digit ($0 - $F) of the
|
||||
address.
|
||||
|
||||
Control Register
|
||||
|
||||
The 6551 Control Register is mapped to $C0sB
|
||||
($C09B for Slot 1, $C0AB
|
||||
for Slot 2, etc.).
|
||||
Its format is ...
|
||||
bit 7 : stop bit number [0= 1 stop bit, 1= 2 stop bits for most
|
||||
settings, except: 1.5 stop bits for word length 5 and no parity,
|
||||
and 1 for word length 8 and parity]
|
||||
bits 6 and 5 : word length
|
||||
[00= 8 bits, 01= 7 bits, 10= 6 bits, 11= 5 bits]
|
||||
|
||||
bit 4 : receiver clock source [0= external, 1= internal]
|
||||
|
||||
bits 3, 2, 1, 0 : baud rate, as follows:
|
||||
0000= 16x external clock
|
||||
0001= 50 bps
|
||||
0010= 75 bps
|
||||
0011= 109.92 bps
|
||||
0100= 134.58 bps
|
||||
0101= 150 bps
|
||||
0110= 300 bps
|
||||
0111= 600 bps
|
||||
1000= 1200 bps
|
||||
1001= 1800 bps
|
||||
1010= 2400 bps
|
||||
1011= 3600 bps
|
||||
1100= 4800 bps
|
||||
1101= 7200 bps
|
||||
1110= 9600 bps
|
||||
1111= 19200 bps
|
||||
|
||||
Note that 1 MHz Apples (everything other than the Apple IIgs and //c
|
||||
Plus running in "fast" mode) cannot handle 19.2 kbps, and even 9600
|
||||
bps on these machines requires either some highly optimised code or
|
||||
a decent buffer in the device being accessed. The faster Apples
|
||||
have no difficulty with this speed, however.
|
||||
|
||||
Command Register
|
||||
|
||||
The 6551 Command Register is mapped to $C0sA, and is essentially an
|
||||
extension of the Control Register.
|
||||
|
||||
Its format is ...
|
||||
bits 7 and 6 : parity mode control [00= odd parity, 01= even parity,
|
||||
10= mark parity (parity bit always set),
|
||||
11= space parity
|
||||
(parity bit always cleared)]
|
||||
|
||||
bit 5 : parity mode enable [0=no parity used, 1=parity used]
|
||||
bit 4 : receiver mode echo [0=no echo, 1=echo]
|
||||
bits 3 and 2 : transmitter interrupt control
|
||||
[00= set RTS high and transmit no interrupts,
|
||||
01= set RTS low and transmit interrupts,
|
||||
10= set RTS low and transmit no interrupts,
|
||||
11= set RTS low and
|
||||
transmit break signals instead of interrupts]
|
||||
|
||||
bit 1 : interrupt request disable
|
||||
[0=enable receiver interrupts,
|
||||
1=disable receiver interrupts]
|
||||
bit 0 : Data Terminal Ready (DTR) setting
|
||||
[0=set DTR high (indicates 'not ready'),
|
||||
1=set DTR low (indicates 'ready')]
|
||||
|
||||
Note that, although the DTR is generally not used in the SSC
|
||||
(it may actually not be connected!), it must be set to 'low' in order for the
|
||||
6551 to function correctly. Also, the RTS signal must be set 'low'
|
||||
in order to receive any incoming data from the serial device.
|
||||
|
||||
Note also that both the Command and Control registers are write-only,
|
||||
which means that reading them will not necessarily yield valid data
|
||||
on the device's settings. If there is any doubt as to the current
|
||||
settings of the 6551, you should (re)initialise them.
|
||||
|
||||
Status register
|
||||
|
||||
The 6551 Status register is mapped to $C0s9. It is a read-only register
|
||||
and its format is ...
|
||||
|
||||
bit 7 : interrupt [0=no interrupt, 1=interrupt]
|
||||
bit 6 : Data Set Ready (DSR) [0=DSR low (ready), 1=DSR high (not ready)]
|
||||
bit 5 : Data Carrier Detect (DCD) [0=DCD low (detected), 1=DCD high (not detected)]
|
||||
bit 4 : transmitter data register empty [0=not empty, 1=empty]
|
||||
bit 3 : receiver data register full [0=not full, 1=full]
|
||||
bit 2 : overrun error [0=no error, 1=error]
|
||||
bit 1 : framing error [0=no error, 1=error]
|
||||
bit 0 : parity error [0=no error, 1=error]
|
||||
|
||||
Data Register
|
||||
The Data Register at $C0s8 is used both for outgoing and incoming data.
|
||||
Whether the data has been sent or received can be determined by checking
|
||||
bits 4 and 3 (respectively) of the Status register.
|
||||
|
||||
I hope that this is the SSC programming information that you are looking for.
|
||||
|
||||
Aaron Heiss
|
|
@ -1,45 +0,0 @@
|
|||
To-do list (Tom)
|
||||
================
|
||||
|
||||
This is a (non-exhaustive) list of stuff that I personally would like to get done:
|
||||
|
||||
(14/8/2014) Having moved all non-system headers out of stdafx.h, it looks like
|
||||
many headers are included just to call Init() or Reset() methods for Apple II sub-systems.
|
||||
Cut down on the headers by:
|
||||
- Using the Visitor pattern (for all Apple II sub-systems)?
|
||||
- Or just a vector which contains all sub-system Reset() methods?
|
||||
|
||||
. Consolidate the Spkr_SubmitWaveBuffer() & Spkr_SubmitWaveBuffer_FullSpeed() funcs.
|
||||
This will make the code cleaner & simpler.
|
||||
|
||||
. Software mix Speaker & Mockingboard waves before submitting to sound-buffer.
|
||||
This will:
|
||||
a) fix the problem with speaker sound be rough when MB is active.
|
||||
b) probably fix the problem with other processes having problems playing sound at the
|
||||
same time as AppleWin. (Although I've not experienced this)
|
||||
c) hopefully simplify things :)
|
||||
|
||||
. Run emulation (or message-pump?) in a seperate thread.
|
||||
So that the sound is continuous when dragging the window or starting other applications, etc.
|
||||
|
||||
. Add proper Votrax support (using PinMAME samples & code).
|
||||
|
||||
. Fix SSI263 so that phonemes are overlapped (like Votrax).
|
||||
|
||||
. Save-state supporting Phasor, harddisk & Ramworks III
|
||||
|
||||
. Support for switching display modes mid-frame
|
||||
To support Bob Bishop's intros, tight-loop page-flipping, etc
|
||||
|
||||
---
|
||||
|
||||
Plans for (1st pass) cleaning up are:
|
||||
. Ditch the x86 code to access the PC speaker + ditch PC speaker support
|
||||
. [DONE] The arrays ioread[] & iowrite[] in Memory.cpp should be switched from units of 1 byte to 16 bytes.
|
||||
This will yield 256 entries spanning [$C000…$CFFF] – currently it’s only [$C000…$C0FF]. This will mean that:
|
||||
a) cards with I/O mapped above $C0FF (eg Mockingboard, Mouse?) don’t have to be kludged as in the READ/WRITE macros in CPU.cpp
|
||||
b) $CFFF (ROMs out) can be emulated
|
||||
. Talking of CPU.cpp & those macros: I’d prefer to replace them with inline funcs. Maintenance of these
|
||||
macros is a bitch & they can’t be single-stepped. Inline funs should yield the same code (in release build)
|
||||
as the macros.
|
||||
|
|
@ -1,53 +0,0 @@
|
|||
*** Uthernet ethernet emulation setup instructions. ***
|
||||
|
||||
Updated - March 26 2006 - R. Glenn Jones
|
||||
|
||||
Note: Uthernet (TFE) support in Applewin was made possible by implementing the GPL source written by Spiro Trikaliotis for the Vice emulator - http://www.viceteam.org/
|
||||
|
||||
To enable Ethernet support in AppleWin you must first download and install WinPcap.
|
||||
|
||||
An Alternative to downloading WinPcap is to get the Ethereal package which includes WinPcap along with Ethereal network analyzer code. To use Ethereal to capture traffic (other then your own) you must be plugged into a shared hub vs a switch. If you plan on doing any network programming ethereal is a definite must have.
|
||||
|
||||
WinPcap: http://www.WinPcap.org/install/default.htm or Ethereal: http://www.ethereal.com/download.html
|
||||
|
||||
After AppleWin starts, select the settings ICON and then select the Ethernet settings button.
|
||||
|
||||
Uthernet will be disabled. Select Uthernet from the list of available ethernet emulations (currently the only one).
|
||||
|
||||
Select the ethernet interface you want to work with. This must be a physical ethernet interface.
|
||||
|
||||
If you have more then one interface you may need to select them in turn in order to get the text description for each interface vs what WinPcap likes to use for a reference. Select Ok. and then close AppleWin. *Note:* Wireless does not work with WinPcap.
|
||||
|
||||
NOTE: Due to a current limitation you must exit AppleWin and re-run AppleWin for 'a' ethernet interface change to take effect.
|
||||
|
||||
In order to test the Ethernet emulation out you should grab a copy of Contiki for the Apple II here - http://www.a2retrosystems.com/downloads.htm
|
||||
|
||||
Grab the 80 Col. Primary Disk and Supplementary Disk images if using Apple //e emulation or the 40 Col versions if running Apple II+ emulation. You should also grab a copy of the Uthernet/Contiki getting started guide http://www.a2retrosystems.com/a2UtherManual.pdf
|
||||
|
||||
When you run AppleWin again, select the contiki80pri.dsk image. Boot AppleWin.
|
||||
|
||||
Once Contiki is loaded then press Enter to clear the welcome screen and press ESC for a menu.
|
||||
|
||||
Choose Directory Application and then select configuration edit program. Tab down to the Slot param and change it to '3'. The emulation only works in slot 3.
|
||||
|
||||
If you do not have DHCP support in your local Lan then setup your static IP address information here as well. Save and exit.
|
||||
|
||||
If you have DHCP support in your local lan then press ESC and choose Directory Application again, and then select DHCP client.
|
||||
|
||||
Hit enter on request Address and you should see the IP information updated. Close the window and then press ESC again.
|
||||
|
||||
Select the web browser and hit Enter a couple of times.
|
||||
Adam Dunkels web site should show up if things are working properly.
|
||||
|
||||
Try a few other web sites if the first one isn't working in case it is temporarily down.
|
||||
You may also need to configure/disable your firewall if you are having problems.
|
||||
|
||||
Glenn
|
||||
|
||||
---------------------------------------
|
||||
|
||||
Troubleshooting
|
||||
---------------
|
||||
|
||||
If you have ZoneAlarm running then try disabling it inorder to access the web.
|
||||
if you are still having difficulty then you should refer to the VICE network support page for additional information - http://vicekb.trikaliotis.net/13-005.shtml
|
|
@ -1,136 +0,0 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html><head>
|
||||
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
||||
<meta name="author" content="Spiro Trikaliotis">
|
||||
<meta name="copyright" content="© 2003-2007 Spiro Trikaliotis and the VICE team">
|
||||
<link rel="stylesheet" href="VICE%20Knowledge%20Base%20-%20Article%2013-005_files/vicekb.css" title="My own stylesheet">
|
||||
<meta name="keywords" content="vice knowledge base,vkb,x64,x128,xplus4,xcbm,xvic">
|
||||
<title>VICE Knowledge Base - Article 13-005</title>
|
||||
</head>
|
||||
<body>
|
||||
<!--#config timefmt="%d.%b.%Y %H:%M" -->
|
||||
<div class="top">
|
||||
<div class="title">
|
||||
<h1>
|
||||
<a href="http://web.archive.org/web/20130517193701/http://www.viceteam.org/">
|
||||
<img alt="VICE home" src="VICE%20Knowledge%20Base%20-%20Article%2013-005_files/vice-logo.png" width="120" height="45" border="0"></a>
|
||||
Knowledge Base - Article 13-005</h1>
|
||||
</div> <!-- title -->
|
||||
<hr>
|
||||
</div> <!-- top -->
|
||||
<div class="main">
|
||||
<div class="sidebar">
|
||||
<p>Article ID: 13-005</p>
|
||||
<p><b>Last Reviewed:</b><br>August 25, 2004</p>
|
||||
<p><a title="Send this article to a friend" href="http://web.archive.org/web/20130517193701/mailto:/?subject=VICE%20Knowledge%20Base%20Article%20-%2013-005&body=This%20article%20pointer%20was%20forwarded%20to%20you%20from%20the%20VICE%20Knowledge%20Base%20site.%20http://vicekb.trikaliotis.net/13-005">
|
||||
<img src="VICE%20Knowledge%20Base%20-%20Article%2013-005_files/icoEmail.gif" width="18" height="10" border="0" align="absMiddle">Send to a friend</a></p>
|
||||
<p>Provided by<br><a target="_top" href="http://web.archive.org/web/20130517193701/http://www.viceteam.org/">The VICE team</a></p>
|
||||
<p>If you want to bookmark this page or refer to it, use the following URL only, please:<br>
|
||||
<a href="http://web.archive.org/web/20130517193701/http://vicekb.trikaliotis.net/13-005">http://vicekb.trikaliotis.net/13-005</a>
|
||||
</p><hr>
|
||||
</div> <!-- sidebar -->
|
||||
<div class="content">
|
||||
<h1>[Howto] Enable networking with WinVICE</h1>
|
||||
<hr>
|
||||
The information in this article applies to the following versions of VICE: <ul><li>all Windows versions starting from 1.13</li></ul>
|
||||
<hr><h2>PROBLEMEXPOSITION</h2>
|
||||
<p>Starting with WinVICE 1.13, there is support for two ethernet cartridges allowing network access: The "<a href="http://web.archive.org/web/20130517193701/http://www.dunkels.com/adam/tfe/">The Final
|
||||
Ethernet</a>" (TFE) and the "Retroreplay-Net" (RR-Net) cartridges. If you
|
||||
want to enable support for these, you have to follow the instructions below.</p><h2>!WARNING!</h2>
|
||||
<p>Installing support for networking with VICE requires you to install
|
||||
3rd party products on your machine. The VICE team cannot be
|
||||
made responsible for any problems
|
||||
and/or damage which arises from this! The rejection of any
|
||||
warranty for VICE
|
||||
applies, too.<br>
|
||||
The product which has to be installed, <a href="http://web.archive.org/web/20130517193701/http://winpcap.polito.it/">WinPCAP</a>,
|
||||
is a capture library. That is, it captures <b>every</b> packet which is available
|
||||
on the network, regardless if it was destined for your machine or not. From this, it
|
||||
follows that it is a real security flaw using WinPCAP in a network. Using WinPCAP
|
||||
can result in disclosure of any information that is available on your network which is
|
||||
not secured by other means! Installing WinPCAP, you acknowledge that you're well aware
|
||||
of this security flaw and that the VICE team cannot be made responsible for any problems
|
||||
and/or damage which may arise from the use of WinPCAP!</p><h2>PREREQUISITES</h2>
|
||||
<p>At that moment, The ethernet emulation for WinVICE only works if you
|
||||
have a real ethernet card on your machine and you are
|
||||
connected to the net via it, that is, you must have
|
||||
direct access to any station you want to access. Ethernet
|
||||
is emulated as if the VICE emulator was
|
||||
connected to your ethernet card via a hub. Every protocol,
|
||||
in particular PPPOE or other protocols,
|
||||
are only supported if the corresponding emulated program
|
||||
supports these!</p><h2>SOLUTION</h2>
|
||||
<p></p><p>For networking support, you need administrative rights
|
||||
(administrator account or similar) on your windows machine.
|
||||
Without this, there's no chance to have networking work!</p>
|
||||
<p>If you have administrative rights, follow the following instructions to install networking
|
||||
with VICE:</p>
|
||||
<ul><li>First, read the above warning!</li><li>Get <a href="http://web.archive.org/web/20130517193701/http://winpcap.polito.it/">WinPCAP</a>
|
||||
from their site. There's only need for the WinPCAP auto-installer in order to let VICE run.</li>
|
||||
<li>Install the WinPCAP package you just downloaded. For this, you need to have the right to install
|
||||
new drivers to your system. In general, the administrator account does have this right.</li>
|
||||
<li>Now, start WinVICE as you do always. Do this with the user account you have used in the previous
|
||||
step to install WinPCAP! Choosing the VICE menu entry Settings/Ethernet, a dialog box
|
||||
shows up, allowing you to select Ethernet as NONE, TFE ("The final ethernet") or RR-Net. If this
|
||||
is possible, WinPCAP has be installed successfully to your system. If not, check the <a href="http://web.archive.org/web/20130517193701/http://winpcap.polito.it/misc/faq.htm">WinPCAP FAQ</a> to find a solution.</li>
|
||||
<li>The only program using ethernet we know to date is <a href="http://web.archive.org/web/20130517193701/http://dunkels.com/adam/contiki/index.html">Contiki</a>. To use Contiki, get a version of it
|
||||
from <a href="http://web.archive.org/web/20130517193701/http://dunkels.com/adam/contiki/index.html">the website</a>. Make sure that it is
|
||||
a version which is enabled for ethernet (TFE or RR-Net)!</li>
|
||||
<li>Run this version of Contiki inside x64. Now, enable ethernet with TFE or RR-Net settings, depending
|
||||
on which type you want to use. Since these two are almost identical, only some addresses are changed,
|
||||
it's more of a matter of taste which one to use. Select the ethernet device you want to use with
|
||||
ethernet if you have more than one.
|
||||
</li><li>You need an IP address in order to let Contiki run on your network. The virtual ethernet device
|
||||
of VICE runs as if it were connected to your host computer's device with a hub. No network address
|
||||
translation (NAT) or the like is performed! Get an IP from your network administrator as if you had
|
||||
a new machine to connect to your network. In fact, you have one, although it is only emulated.</li>
|
||||
<li> Now, run Contiki, enter your IP configuration using the IP from above, and everything should
|
||||
work.</li></ul>
|
||||
<p>Enjoy the new surfing experience.</p>
|
||||
<p>It's not necessary to log on as administrator in order to run the ethernet emulation. Anyway,
|
||||
this <b>is</b> necessary the first time you start VICE after you've booted. After you've done
|
||||
this, you can log off and log in with another account to run VICE. To circumvent this, see
|
||||
the FAQ section below.</p><h2>FAQ</h2>
|
||||
<p></p><ul><li><p><b>Why do I have to log in as administrator in order to start VICE with network support?</b></p><p>This is because the WinPCAP driver is not loaded at system startup, but rather
|
||||
on-demand when someone like VICE needs it. Not every user is allowed to start services, thus, you
|
||||
have to log in as a user with these rights in order to start it. The administrator is a person having
|
||||
this right. On many machines, an account belonging to the "main user" group is allowed,
|
||||
too. On these machines, you don't need administrator rights in order to start VICE with networking
|
||||
support.</p><p>If you don't like this solution, you have another option. See <a href="http://web.archive.org/web/20130517193701/http://winpcap.polito.it/misc/faq.htm#Q-18">Q-18</a> at the WinPCAP FAQ.</p></li>
|
||||
<li><p><b>I have problems with networking support; furthermore, there's a firewall on my machine</b></p>
|
||||
<p>This is a know problem with WinPCAP, it does not work well with all firewalls, see <a href="http://web.archive.org/web/20130517193701/http://winpcap.polito.it/misc/faq.htm#Q-10">Q-10</a> at the WinPCAP FAQ. Unfortunately, we don't
|
||||
have a solution for this. Disabling the firewall, as suggested in Q-10, might not be an option for
|
||||
you, but we cannot do anything about it.</p></li>
|
||||
<li><p><b>I have another problem not covered here.</b></p><p>Have a look at the <a href="http://web.archive.org/web/20130517193701/http://winpcap.polito.it/misc/faq.htm">WinPCAP FAQ</a>, there might be a solution for your problem.
|
||||
</p></li></ul><p></p><h2>STATUS</h2>
|
||||
<p>This document is for information purpose only. The behaviour reported
|
||||
is intentional in the VICE versions listed at the beginning
|
||||
of this article.</p><h2>LINKS</h2>
|
||||
<p></p><ul><li><a href="http://web.archive.org/web/20130517193701/http://vicekb.trikaliotis.net/11-002">11-002 [Howto] Enable networking on VICE/Unix</a>.</li> <li>The Final Ethernet Homepage: <a href="http://web.archive.org/web/20130517193701/http://www.dunkels.com/adam/tfe/">http://www.dunkels.com/adam/tfe/</a>.</li><li>
|
||||
Contiki Homepage:
|
||||
<a href="http://web.archive.org/web/20130517193701/http://dunkels.com/adam/contiki/index.html">http://dunkels.com/adam/contiki/index.html</a>.
|
||||
</li><li>WinPCAP: <a href="http://web.archive.org/web/20130517193701/http://winpcap.polito.it/">http://winpcap.polito.it/</a>.
|
||||
</li><li><a href="http://web.archive.org/web/20130517193701/http://winpcap.polito.it/misc/faq.htm">WinPCAP FAQ</a>, especially
|
||||
<a href="http://web.archive.org/web/20130517193701/http://winpcap.polito.it/misc/faq.htm#Q-10">Q-10</a> and <a href="http://web.archive.org/web/20130517193701/http://winpcap.polito.it/misc/faq.htm#Q-18">Q-18</a>.</li></ul><p></p><h2>REVISION</h2>
|
||||
<p></p><ul><li>August 25,2004: Added reference to the same information for Unix based systems</li> <li>October 14, 2003: Before, it was mistakenly said that you find ethernet on
|
||||
Options/Ethernet. This is not true, it is Settings/Ethernet.</li>
|
||||
<li>October 8, 2003: Added section PREREQUISITES.</li>
|
||||
<li>September 15, 2003: Original release of this document</li></ul><p></p> </div> <!-- content -->
|
||||
<div class="review">
|
||||
<p>Last Reviewed: August 25, 2004</p>
|
||||
</div> <!-- review -->
|
||||
</div> <!-- main -->
|
||||
<div class="footer">
|
||||
<hr>
|
||||
<div class="copyright"> © 2003-2007 <a href="http://web.archive.org/web/20130517193701/mailto:www@@trikaliotis.net">Spiro Trikaliotis</a> and <a href="http://web.archive.org/web/20130517193701/http://www.viceteam.org/">The VICE team</a><br>
|
||||
<a href="http://web.archive.org/web/20130517193701/http://vicekb.trikaliotis.net/13-005">http://vicekb.trikaliotis.net/13-005</a>
|
||||
Last modified: August 25, 2004
|
||||
</div> <!-- copyright -->
|
||||
<div class="fileinfo">
|
||||
<a href="http://web.archive.org/web/20130517193701/http://www.anybrowser.org/campaign/"><img src="VICE%20Knowledge%20Base%20-%20Article%2013-005_files/ab-ms-star-en.gif" alt="Viewable With Any Browser" width="88" height="31"></a><a href="http://web.archive.org/web/20130517193701/http://jigsaw.w3.org/css-validator/validator?uri=http://www.trikaliotis.net/vicekb/common/vicekb.css">
|
||||
<img style="border:0;width:88px;height:31px" src="VICE%20Knowledge%20Base%20-%20Article%2013-005_files/vcss.gif" alt="Valid CSS!"></a>
|
||||
</div> <!-- fileinfo -->
|
||||
</div> <!-- footer -->
|
||||
|
||||
</body></html>
|
Binary file not shown.
Before Width: | Height: | Size: 1.3 KiB |
Binary file not shown.
Before Width: | Height: | Size: 106 B |
Binary file not shown.
Before Width: | Height: | Size: 1.5 KiB |
Binary file not shown.
Before Width: | Height: | Size: 3.4 KiB |
|
@ -1,78 +0,0 @@
|
|||
BODY {
|
||||
FONT-FAMILY: Helvetica, Arial, Tahoma, sans-serif
|
||||
}
|
||||
DIV.top {
|
||||
MARGIN-TOP: 0pt; MARGIN-BOTTOM: 6pt
|
||||
}
|
||||
DIV.top.title {
|
||||
center; FLOAT: right; MARGIN-LEFT: 20%
|
||||
}
|
||||
DIV.top.title P {
|
||||
text-align: center; color: red
|
||||
}
|
||||
DIV.top.logo {
|
||||
FLOAT: left; WIDTH: 20%; MARGIN-RIGHT: 80%
|
||||
}
|
||||
|
||||
DIV.main {
|
||||
}
|
||||
|
||||
DIV.sidebar {
|
||||
MARGIN-TOP: 0pt; FLOAT: right; MARGIN-BOTTOM: 6pt; WIDTH: 30%
|
||||
}
|
||||
|
||||
DIV.sidebar P {
|
||||
FONT-SIZE: 8pt; MARGIN: 0pt 2pt 6pt 36pt
|
||||
}
|
||||
|
||||
DIV.main.content {
|
||||
MARGIN-RIGHT: 30%
|
||||
PADDING-RIGHT: 2pt; PADDING-LEFT: 2pt; PADDING-BOTTOM: 2pt; PADDING-TOP: 2pt
|
||||
}
|
||||
DIV.main.content P {
|
||||
FONT-SIZE: 12pt; MARGIN: 0pt 2pt 6pt 36pt
|
||||
}
|
||||
DIV.main.content P.centered {
|
||||
FONT-SIZE: 12pt; MARGIN: 0pt 2pt 6pt; TEXT-ALIGN: center
|
||||
}
|
||||
DIV.main.content ui {
|
||||
MARGIN: 0pt 0pt 6pt
|
||||
}
|
||||
DIV.main.content li {
|
||||
FONT-SIZE: 12pt
|
||||
}
|
||||
DIV.main.content h1 {
|
||||
FONT-SIZE: 20pt
|
||||
}
|
||||
DIV.content h2 {
|
||||
FONT-SIZE: 15pt
|
||||
}
|
||||
DIV.content hr {
|
||||
MARGIN-RIGHT: 30%; HEIGHT: 3pt
|
||||
}
|
||||
|
||||
DIV.main.content P {
|
||||
}
|
||||
|
||||
DIV.footer {
|
||||
PADDING-RIGHT: 2pt; MARGIN-TOP: 6pt; PADDING-LEFT: 2pt; FLOAT: left; MARGIN-BOTTOM: 0pt; PADDING-BOTTOM: 2pt; VERTICAL-ALIGN: baseline; WIDTH: 100%; PADDING-TOP: 2pt
|
||||
}
|
||||
|
||||
DIV.copyright {
|
||||
FONT-SIZE: 60%; FLOAT: left
|
||||
}
|
||||
DIV.review {
|
||||
text-align: center; FONT-SIZE: 8pt
|
||||
}
|
||||
DIV.fileinfo {
|
||||
FONT-SIZE: 60%; FLOAT: right
|
||||
}
|
||||
|
||||
/*
|
||||
FILE ARCHIVED ON 03:57:53 Jul 19, 2013 AND RETRIEVED FROM THE
|
||||
INTERNET ARCHIVE ON 21:23:25 Dec 18, 2017.
|
||||
JAVASCRIPT APPENDED BY WAYBACK MACHINE, COPYRIGHT INTERNET ARCHIVE.
|
||||
|
||||
ALL OTHER CONTENT MAY ALSO BE PROTECTED BY COPYRIGHT (17 U.S.C.
|
||||
SECTION 108(a)(3)).
|
||||
*/
|
|
@ -1,6 +0,0 @@
|
|||
TODO
|
||||
|
||||
* AppleWin NEEDS to be double buffered!
|
||||
|
||||
* Use SDL ?
|
||||
* Look at Linapple?
|
|
@ -1,32 +0,0 @@
|
|||
How to update the webpage
|
||||
=========================
|
||||
|
||||
1) Save a local copy of this page: http://applewin.berlios.de/ as index.php
|
||||
|
||||
2) Edit index.php using Nvu, Frontpage, etc
|
||||
|
||||
3) Launch PSFTP (part of PuTTY)
|
||||
|
||||
open shell.berlios.de
|
||||
|
||||
cd /home/groups/applewin/htdocs
|
||||
lcd <folder on PC>
|
||||
put index.php
|
||||
put AppleWin.chm
|
||||
put History.txt
|
||||
|
||||
*** NB. Files on BerliOS server are case-sensitive
|
||||
*** Bear this in mind when ref'ing files from the web-page.
|
||||
|
||||
|
||||
4) AppleWinX.Y.Z.zip gets uploaded to berliOS's applewin 'Files' page:
|
||||
. Project Admin -> Edit/Release Files
|
||||
. Quick-release a file
|
||||
. Package ID: AppleWin
|
||||
. Release Name: (eg) 1.13.2
|
||||
. Status: Active
|
||||
. Upload a new file...
|
||||
|
||||
Alternatively:
|
||||
|
||||
Login to ftp.berlios.de as 'anonymous' and upload the zip to the 'incoming' folder.
|
|
@ -1,87 +0,0 @@
|
|||
Requests (Wishlist):
|
||||
====================
|
||||
|
||||
. DONE
|
||||
Hard Disk light/indicator
|
||||
Right now the "- Caps" in the bottom right wastes too much space.
|
||||
It should be replace with [A] and [a]
|
||||
This would free up room to add a hard drive light indicator to the right.
|
||||
https://groups.google.com/d/msg/comp.emulators.apple2/grpSWHii8Ak/IorwTvbLxtgJ
|
||||
|
||||
. Video: Full Screen Debugger Colors
|
||||
Amber, F7, F7 - wrong palette?
|
||||
|
||||
. Video: Proper mixed-mode displays
|
||||
. Periphals: Ability to swap ROM cards
|
||||
|
||||
- Disk map!!!
|
||||
http://www.lazilong.com/apple_II/adfs/screenshots/beagle_block.html
|
||||
|
||||
Priority:
|
||||
. Shift keys map to button#2
|
||||
. DONE: Right-click on drive icon to eject disk
|
||||
Shift-Right-Click to turn Write Protection ON
|
||||
Ctrl-Right-Click to turn Write Protection OFF
|
||||
. DONE? (use '\') SCR shows what the Apple monitor should look like at the current point
|
||||
. DONE: Use MT# MA# to dump memory as text.
|
||||
. DONE: Ramworks support (see AppleWin 2.0 project src)
|
||||
. DONE: Shift+Ins to paste from clipboard
|
||||
. DONE: Cmd-line switches for: d1, d2, full-screen
|
||||
|
||||
|
||||
Post 1.12.9.1:
|
||||
- [ Feature Request #2054 ] More accurate save state
|
||||
|
||||
Post 1.12.8.0:
|
||||
- I have multiple controllers and was wondering if a future version of the emulator
|
||||
could support selecting the joystick you want to use in the emulator.
|
||||
|
||||
Post 1.12.7.0:
|
||||
- Light-gun support (if pixel under mouse is set, then set $C061.b7 (Richard Jackson))
|
||||
|
||||
Post 1.12.6.0:
|
||||
- Map keys to PC gamepad buttons, eg. I,J,K,M -> Up,Left,Right,Down
|
||||
- Echo II support
|
||||
. DONE: v16.0.0.0: VIDEO: Monitor /// output (with a gap between each scanline)
|
||||
|
||||
Post 1.12.5.0:
|
||||
- Option to associate (or not) file types with AW.
|
||||
- Option for the emulator to not lock the disks while they are in the (virtual) drives.
|
||||
|
||||
- Default monochrome mode to green
|
||||
- Associate .aws with AppleWin.
|
||||
|
||||
- DONE: v16.0.0.0: UI: Screen snapshot
|
||||
- Arrow-key joystick emu: can't go diagonally
|
||||
- Map right-ctrl to button-0
|
||||
|
||||
Post 1.12.4.2:
|
||||
- Ability to capture Apple A/V to an AVI file.
|
||||
- Paddle emulation: 1 analogue input for PDL0, another (independent one) for PDL1.
|
||||
|
||||
Post 1.12.4.1:
|
||||
- Option to make any pc joystick button working as the 'Turbo' (i.e. Scroll Lock).
|
||||
- FastMath card support.
|
||||
- Ability to view page1/2 & switch mode (Text/GR/HGR/DHGR)
|
||||
- Add an 80 X 80 or 40X40 text mode
|
||||
- Send data back and forth between emu apple 2 and VisualBasic
|
||||
- Resizeable , scalable window
|
||||
- Make a documented interface so others can program Apple II peripheral card Emu plugins.
|
||||
- Emulate a video capture card: get an image from a webcam, de-rez it to HGR, and display it on the HGR screen.
|
||||
- AppleCrate emulation between several open AppleWin emulators.
|
||||
- Access PC files from PRODOS or DOS instead of DSK images? : Not doing (user CiderPress instead)
|
||||
|
||||
Post 1.12.4.0:
|
||||
- Ability to send files to the PC from a disk image in AppleWin : Not doing (user CiderPress instead)
|
||||
- Ability to load files from the PC to a disk image in AppleWin : Not doing (user CiderPress instead)
|
||||
- When you are using the mouse as a cursor / joystick, as well as the markers on the screen border, enable the user to also add a dot (or cross hair) to the screen wherever the mouse pointer is.
|
||||
- Ability to send Apple's stdout to clipboard or file (and vice versa).
|
||||
|
||||
Initial:
|
||||
- Cassette-in
|
||||
- Merged source base w/ PocketPC port (e.g. http://www.geocities.com/bonelyfish/applece.html)
|
||||
- Cut'n'paste support
|
||||
- Option to switch joystick buttons. (Lolo S: 01/06/04)
|
||||
- Option to trim joystick axes. Drift problem with "Rescue Raiders". (Lolo S: 01/06/04)
|
||||
- Backspace (Apple's DELETE key) shouldn't back to left-arrow. Make this configurable. (TheRink: 06/06/04)
|
||||
|
|
@ -1,43 +0,0 @@
|
|||
=== Updating CHM ===
|
||||
|
||||
cd help
|
||||
"C:\Program Files (x86)\HTML Help Workshop\hhc" AppleWin.hhp
|
||||
|
||||
To view:
|
||||
|
||||
start AppleWin.chm
|
||||
|
||||
The batch file "update.bat" will both compile and view the CHM.
|
||||
|
||||
|
||||
=== Installing Microsoft Help Workshop ===
|
||||
|
||||
The official site is here...
|
||||
|
||||
* https://docs.microsoft.com/en-us/previous-versions/windows/desktop/htmlhelp/microsoft-html-help-downloads
|
||||
|
||||
... but in typical MS fashion it is outdated -- it has two broken links since the Help Workshop is not on "Microsoft Download Center."
|
||||
|
||||
i.e.
|
||||
|
||||
* https://download.microsoft.com/download/0/A/9/0A939EF6-E31C-430F-A3DF-DFAE7960D564/htmlhelp.exe
|
||||
* https://download.microsoft.com/download/0/a/9/0a939ef6-e31c-430f-a3df-dfae7960d564/htmlhelpj.exe
|
||||
|
||||
This community question ...
|
||||
|
||||
* https://docs.microsoft.com/en-us/answers/questions/265752/htmlhelp-workshop-download-for-chm-compiler-instal.html
|
||||
|
||||
... says to use Wayback Machine.
|
||||
|
||||
* http://web.archive.org/web/20160201063255/http://download.microsoft.com/download/0/A/9/0A939EF6-E31C-430F-A3DF-DFAE7960D564/htmlhelp.exe
|
||||
* http://web.archive.org/web/20160314043751/http://download.microsoft.com/download/0/A/9/0A939EF6-E31C-430F-A3DF-DFAE7960D564/helpdocs.zip
|
||||
|
||||
Installing it is straight-forward but you'll get a misleading pop-up dialog near the end:
|
||||
|
||||
"This computer has a newer version of HTML Help."
|
||||
|
||||
This refers to the help VIEWER (which is already installed) and NOT the help COMPILER which was just installed.
|
||||
|
||||
A step-by-step installation guide can be found here:
|
||||
|
||||
* https://www.helpndoc.com/step-by-step-guides/how-to-download-and-install-microsofts-html-help-workshop-compiler/
|
|
@ -1,123 +0,0 @@
|
|||
How To Compile/Build AppleWin
|
||||
=============================
|
||||
|
||||
MSVC 2017 Community
|
||||
===================
|
||||
|
||||
1. Install [.NET Framework 4.6](https://www.microsoft.com/en-us/download/details.aspx?id=48137)
|
||||
|
||||
NOTE: The installer _will still_ complain about 4.6 even if [4.6.2](http://www.microsoft.com/en-us/download/details.aspx?id=53344) is installed.
|
||||
)
|
||||
|
||||
2. MSVC 2017 Community Edition
|
||||
|
||||
a. Install [MSVC 2017 Community](https://www.visualstudio.com/thank-you-downloading-visual-studio/?sku=Community&rel=15)
|
||||
b. Run `vs_Community.exe`
|
||||
c. `Individual Components`
|
||||
|
||||
NOTE: Not all of these may be required but they are recommended:
|
||||
|
||||
|
||||
* [x] .NET Framework 4.6.1 SDK
|
||||
* [x] .NET Framework 4.6.1 targeting pack
|
||||
* [x] C++ profiling tools
|
||||
* [x] C++/CLI support
|
||||
* [x] Git for Windows
|
||||
* [x] Graphics Tools Windows 8.1 SDK
|
||||
* [x] Graphics debugger and GPU profiler for DirectX
|
||||
* [x] Static analysis tools
|
||||
* [x] VC++ 2017 v141 toolset (x86,x64)
|
||||
* [x] Windows Universal CRT SDK
|
||||
* [x] Visual Studio C++ core features
|
||||
* [x] Windows 8.1 SDK
|
||||
* [x] Windows 10 SDK (10.0.15063.0) for Desktop C++ x86 and x64
|
||||
* [x] Windows 10 SDK (10.0.15063.0) for UWP: C#, VB, JS
|
||||
* [x] Windows 10 SDK (10.0.15063.0) for UWP: C++
|
||||
|
||||
3. Clone the repository
|
||||
|
||||
git clone https://github.com/AppleWin/AppleWin.git
|
||||
|
||||
Older MSVC instructions
|
||||
=======================
|
||||
|
||||
0. Install git
|
||||
|
||||
1. Clone the repository
|
||||
|
||||
git clone https://github.com/AppleWin/AppleWin.git
|
||||
|
||||
2. Download the Feb 2010 DirectX SDK
|
||||
(It is the last version to have DirectDraw)
|
||||
|
||||
http://www.microsoft.com/en-us/download/details.aspx?id=10084
|
||||
|
||||
3. Add ddraw.lib to the linker include path:
|
||||
|
||||
AppleWin project, Right-Click Properties, Linker, General, Additional Library Directories
|
||||
|
||||
The default path is:
|
||||
C:\Program Files (x86)\Microsoft DirectX SDK (February 2010)\Lib\x86
|
||||
|
||||
|
||||
|
||||
|
||||
How to do a Coverity Scan of AppleWin
|
||||
=====================================
|
||||
|
||||
1. Download Coverity Scan Self-Build:
|
||||
https://scan.coverity.com/download?tab=cxx
|
||||
|
||||
Unzip and add the bin directory to your path
|
||||
|
||||
2. Launch VS2008 Express / Professional
|
||||
|
||||
3. Tools -> Visual Studio 2008 Command Prompt
|
||||
|
||||
VS 2008 Express:
|
||||
----------------
|
||||
|
||||
4. Set env vars:
|
||||
set include=%include%;<DirectX SDK 9.0 SDK include path>
|
||||
set lib=%lib%;<DirectX SDK 9.0 SDK lib path>
|
||||
|
||||
EG:
|
||||
set include=%include%;C:\Program Files (x86)\Microsoft DirectX SDK (February 2010)\Include
|
||||
set lib=%lib%;C:\Program Files (x86)\Microsoft DirectX SDK (February 2010)\Lib\x86
|
||||
|
||||
5. Clean & build:
|
||||
vcbuild /clean AppleWinExpress2008.sln "Release|Win32"
|
||||
cov-build --dir cov-int vcbuild /u AppleWinExpress2008.sln "Release|Win32"
|
||||
|
||||
VS 2008 Professional:
|
||||
---------------------
|
||||
|
||||
4. Set env vars:
|
||||
N/A
|
||||
|
||||
5. Clean & build:
|
||||
devenv AppleWinExpress2008.sln /clean
|
||||
cov-build --dir cov-int devenv AppleWinExpress2008.sln /build release
|
||||
|
||||
|
||||
|
||||
|
||||
How to disable F12 so it doesn't trigger a breakpoint
|
||||
=====================================================
|
||||
|
||||
When running AppleWin from Visual Studio (eg. F5), then F12 will trigger a breakpoint.
|
||||
|
||||
This is undesirable, since F12 is used to load a save-state.
|
||||
|
||||
AppleWin does also support CTRL+F12 to load a save-state too (for this very reason), but it's possible to disable F12 triggering the breakpoint.
|
||||
|
||||
Background:
|
||||
F12 is the OS's default UserDebuggerHotKey:
|
||||
https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2003/cc786263(v=ws.10)
|
||||
|
||||
Fix:
|
||||
. Change this Registry key: "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug" -> UserDebuggerHotKey to 0x07 (*)
|
||||
. And restart the PC for it to take effect.
|
||||
|
||||
(*) Where 0x07 = Undefined
|
||||
(See: https://docs.microsoft.com/en-us/windows/win32/inputdev/virtual-key-codes)
|
|
@ -1,118 +0,0 @@
|
|||
AddressingMode_e
|
||||
AM_IMPLIED
|
||||
, AM_1 // Invalid 1 Byte
|
||||
, AM_2 // Invalid 2 Bytes
|
||||
, AM_3 // Invalid 3 Bytes
|
||||
, AM_M // 4 #Immediate
|
||||
, AM_A // 5 $Absolute
|
||||
, AM_Z // 6 Zeropage
|
||||
, AM_AX // 7 Absolute, X
|
||||
, AM_AY // 8 Absolute, Y
|
||||
, AM_ZX // 9 Zeropage, X
|
||||
, AM_ZY // 10 Zeropage, Y
|
||||
, AM_R // 11 Relative
|
||||
, AM_IZX // 12 Indexed (Zeropage Indirect, X)
|
||||
, AM_IAX // 13 Indexed (Absolute Indirect, X)
|
||||
, AM_NZY // 14 Indirect (Zeropage) Indexed, Y
|
||||
, AM_NZ // 15 Indirect (Zeropage)
|
||||
, AM_NA // 16 Indirect (Absolute) i.e. JMP
|
||||
|
||||
|
||||
0:34 12 00 00 AA 99
|
||||
D0:16 03
|
||||
1234:56 78 9A
|
||||
R X D0
|
||||
R Y 2
|
||||
|
||||
// ( 4) AM_M || #Immediate
|
||||
300:A9 55 // LDA #$55
|
||||
|
||||
// ( 5) AM_A || $Absolute
|
||||
302:4C 89 67 // JMP $6789
|
||||
305:AD 01 00 // LDA $0001 = 12
|
||||
|
||||
// ( 6) AM_Z || Zeropage
|
||||
308:A5 00 // LDA $00 = #34
|
||||
|
||||
// ( 7) AM_AX || Absolute, X
|
||||
30A:DE 00 00 // DEC $0000,X $D0=FF
|
||||
|
||||
// ( 8) AM_AY || Absolute, Y
|
||||
30D:BE 02 00 // LDX $0002,Y
|
||||
|
||||
// ( 9) AM_ZX || Zeropage, X
|
||||
310:B4 35 // LDY $30,X
|
||||
|
||||
// (10) AM_ZY || Zeropage, Y
|
||||
312:B6 00 // LDX $00,Y $02=0
|
||||
|
||||
// (11) AM_R || Relative
|
||||
314:D0 02
|
||||
|
||||
// (12) AM_IZX || Indexed (Zeropage Indirect, X)
|
||||
316:A1 00 // LDA ($00,X)
|
||||
|
||||
// (13) AM_IAX || Indexed (Absolute Indirect, X)
|
||||
318: 7C 00 00 // JMP ($0000,X)
|
||||
|
||||
// (14) AM_NZY ||
|
||||
31B:B1 00 // LDA ($00),Y
|
||||
|
||||
// (15) NZ ||
|
||||
31D:B2 00 // LDA ($00)
|
||||
|
||||
// (16) AM_NA || Indirect (Absolute)
|
||||
31F:6C 02 00 // JMP ($0002) = ($0000) -> 1234
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Data Disasembly ...
|
||||
|
||||
Test Case:
|
||||
U D001
|
||||
DW BAS D000:D0BF
|
||||
|
||||
|
||||
Debugger_Assembler.
|
||||
int _6502_GetOpmodeOpbyte ( const int iAddress, int & iOpmode_, int & nOpbyte_ )
|
||||
Debugger_Display.
|
||||
WORD DrawDisassemblyLine ( int iLine, const WORD nBaseAddress )
|
||||
int GetDisassemblyLine ( WORD nBaseAddress, DisasmLine_t & line_ )
|
||||
Debugger_DisassemblerData
|
||||
void Disassembly_GetData ( WORD nBaseAddress, const DisasmData_t *pData, DisasmLine_t & line_ )
|
||||
|
||||
|
||||
FormatOpcodeBytes( nBaseAddress, line_ );
|
||||
|
||||
//pMnemonic = g_aOpcodes[ iOpcode ].sMnemonic;
|
||||
line_.iNopcode = pData->iDirective;
|
||||
strcpy( line_.sMnemonic, g_aAssemblerDirectives[ line_.iNopcode ].m_pMnemonic );
|
||||
|
||||
FormatNopcodeBytes( nBaseAddress, line_ );
|
||||
|
||||
bool _6502_GetTargets ( WORD nAddress, int *pTargetPartial_, int *pTargetPointer_, int * pTargetBytes_, bool bIgnoreJSRJMP, bool bIgnoreBranch )
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
WORD DrawDisassemblyLine ( int iLine, const WORD nBaseAddress )
|
||||
// Instruction / Mnemonic
|
||||
linerect.left = (int) aTabs[ TS_INSTRUCTION ];
|
||||
|
||||
if (! bCursorLine)
|
||||
DebuggerSetColorFG( DebuggerGetColor( iForeground ) );
|
||||
|
||||
if( pData ) // Assembler Data Directive / Data Disassembler
|
||||
{
|
||||
// pMnemonic = g_aAssemblerDirectives[ line.iNopcode ].sMnemonic;
|
||||
if (! bCursorLine)
|
||||
DebuggerSetColorFG( DebuggerGetColor( FG_DISASM_DIRECTIVE ) ); // ZZZ TODO: FIXME:
|
||||
pMnemonic = line.sMnemonic;
|
||||
}
|
||||
else
|
||||
{
|
||||
pMnemonic = g_aOpcodes[ iOpcode ].sMnemonic;
|
||||
}
|
Binary file not shown.
|
@ -1,11 +0,0 @@
|
|||
@REM ACME only ever returns 0!
|
||||
acme.exe hddrvr.a65
|
||||
@IF %ERRORLEVEL% NEQ 0 goto error
|
||||
|
||||
copy hddrvr.bin ..\..\resource
|
||||
@goto end
|
||||
|
||||
:error
|
||||
@echo "ACME failed"
|
||||
|
||||
:end
|
|
@ -1,341 +0,0 @@
|
|||
;AppleWin : An Apple //e emulator for Windows
|
||||
;
|
||||
;Copyright (C) 1994-1996, Michael O'Brien
|
||||
;Copyright (C) 1999-2001, Oliver Schmidt
|
||||
;Copyright (C) 2002-2005, Tom Charlesworth
|
||||
;Copyright (C) 2006-2012, Tom Charlesworth, Michael Pohoreski
|
||||
;
|
||||
;AppleWin is free software; you can redistribute it and/or modify
|
||||
;it under the terms of the GNU General Public License as published by
|
||||
;the Free Software Foundation; either version 2 of the License, or
|
||||
;(at your option) any later version.
|
||||
;
|
||||
;AppleWin is distributed in the hope that it will be useful,
|
||||
;but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;GNU General Public License for more details.
|
||||
;
|
||||
;You should have received a copy of the GNU General Public License
|
||||
;along with AppleWin; if not, write to the Free Software
|
||||
;Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
;
|
||||
|
||||
; Description: Firmware for harddisk card
|
||||
;
|
||||
; Author: Copyright (c) 2005, Robert Hoem
|
||||
;
|
||||
|
||||
; Modified by Tom Charlesworth:
|
||||
; . Updated so it can be assembled by ACME 0.97
|
||||
; . Fixed so that ProDOS entrypoint is $c70a (26 Dev 2007) (Bug #12723)
|
||||
; . Modified to support Apple Oasis' entrypoint: $c761 (8 Sept 2012) (Feature #5557)
|
||||
; . Added support for SmartPort entrypoint (20 Oct 2012)
|
||||
; - EG. "Prince of Persia (Original 3.5 floppy for IIc+).2mg"
|
||||
; . GH#370 (Robert Hoem, 27 Oct 2016):
|
||||
; . Added a check against open-apple during boot to route boot to slot 6
|
||||
; . This happens after the first two blocks are loaded from the HD.
|
||||
; . GH#319: SmartPort return address wrong when crossing page
|
||||
; . GH#996: Make code slot-independent (so HDD controller card can go into any slot)
|
||||
; . Moved the 512-byte block read into AppleWin's HDD emulation (to mirror the block write command)
|
||||
; TODO:
|
||||
; . Remove support for Entrypoint_Cs46 (old AppleWin) & Entrypoint_Cs61 (Apple Oasis)
|
||||
; - provide a utility to convert these to use Entrypoint_ProDOS
|
||||
; . Check SmartPort: Is it OK to trash Y and $42,..,$47 ?
|
||||
;
|
||||
|
||||
!cpu 6502 ; Compatible with all Apple2's
|
||||
!to "hddrvr.bin", plain
|
||||
!sl "hddrvr.labels"
|
||||
|
||||
; constants
|
||||
hd_execute = $c080
|
||||
hd_status = $c081 ; b7=busy, b0=error
|
||||
hd_command = $c082
|
||||
hd_unitnum = $c083
|
||||
hd_memblock = $c084
|
||||
hd_diskblock = $c086
|
||||
;hd_nextbyte = $c088 ; legacy read-only port (still supported by AppleWin)
|
||||
|
||||
; Notes on accesses to I/O registers:
|
||||
; . ROR ABS16,X and ROL ABS16,X - only used for $C081+s*$10 STATUS register:
|
||||
; 6502: double read (old data), write (old data), write (new data). The writes are harmless as writes to STATUS are ignored.
|
||||
; 65C02: double read (old data), write (new data). The write is harmless as writes to STATUS are ignored.
|
||||
; . STA ABS16,X does a false-read. This is harmless for writable I/O registers, since the false-read has no side effect.
|
||||
|
||||
command = $42
|
||||
unitnum = $43
|
||||
memblock = $44
|
||||
diskblock = $46
|
||||
|
||||
slot6 = $C600
|
||||
OS = $0801
|
||||
BUTTON0 = $C061
|
||||
|
||||
;======================================
|
||||
|
||||
!zone code
|
||||
|
||||
*= $0000 ; org $0000 - position-independent code, so doesn't matter (but the other fixed org positions need to be on the same page)
|
||||
|
||||
; The Autoboot rom will call this.
|
||||
; This is also the entry point for such things as IN#7 and PR#7
|
||||
|
||||
start
|
||||
|
||||
; Autoboot and ProDOS look at the following few opcodes to detect block devices
|
||||
; NB. $Cn07 should be $00 for a SmartPort Interface, but changing this means that it won't autoboot on ][, ][+ and unenhanced IIe.
|
||||
; . ref: http://www.1000bit.it/support/manuali/apple/technotes/udsk/tn.udsk.2.html
|
||||
lda #$20
|
||||
lda #$00
|
||||
lda #$03
|
||||
lda #$3C
|
||||
bne Bootstrap
|
||||
|
||||
Entrypoint_ProDOS ; $Cn0A - ProDOS entrypoint
|
||||
sec
|
||||
bcs Entrypoint
|
||||
|
||||
Entrypoint_SmartPort ; $Cn0D - SmartPort entrypoint
|
||||
clc
|
||||
|
||||
Entrypoint ; $Cn0E - entrypoint?
|
||||
bcs GetSlotInX ; C=1: GetSlotInX -> cmdproc
|
||||
|
||||
; C=0: fall through to SmartPort...
|
||||
|
||||
;======================================
|
||||
|
||||
; TODO: Is it OK to trash Y and $42,..,$47 ?
|
||||
; Pre: C=0, X = Slot# << 4
|
||||
SmartPort ; SmartPort -> GetSlotInX -> cmdproc
|
||||
pla
|
||||
sta $46
|
||||
adc #3 ; Pre: C=0, Post: C=0 or 1
|
||||
tay
|
||||
pla
|
||||
sta $47 ; ($46) = &cmd_hdr
|
||||
adc #0
|
||||
pha
|
||||
tya
|
||||
pha ; (sp).w += 3
|
||||
|
||||
ldy #1
|
||||
lda ($46),y ; cmd
|
||||
sta $42
|
||||
iny
|
||||
|
||||
lda ($46),y ; param_l
|
||||
sta $45
|
||||
iny
|
||||
lda ($46),y ; param_h
|
||||
sta $46
|
||||
|
||||
ldy #1 ; skip paramLength (assume it's #$03)
|
||||
lda ($45),y ; unit
|
||||
sta $43
|
||||
iny
|
||||
|
||||
lda ($45),y ; memblock_l
|
||||
sta $44
|
||||
iny
|
||||
lda ($45),y ; memblock_h
|
||||
pha
|
||||
iny
|
||||
|
||||
lda ($45),y ; diskblock_l
|
||||
pha
|
||||
iny
|
||||
|
||||
bne SmartPort2
|
||||
|
||||
;======================================
|
||||
; 2 unused bytes
|
||||
|
||||
@checkCs46
|
||||
*= $0046 ; org $0046
|
||||
!warn "Cs46 padding = ", * - @checkCs46
|
||||
|
||||
Entrypoint_Cs46 ; Old f/w 'cmdproc' entrypoint
|
||||
; Keep this for any DOSMaster HDD images created with old AppleWin HDD f/w.
|
||||
; DOSMaster hardcodes the entrypoint addr into its bootstrapping code:
|
||||
; - So DOSMaster images are tied to the HDD's controller's f/w
|
||||
sec
|
||||
bcs Entrypoint ; or directly to GetSlotInX
|
||||
|
||||
;======================================
|
||||
|
||||
Bootstrap
|
||||
; Lets check to see if there's an image ready
|
||||
; Slot n, disk 1
|
||||
clc
|
||||
bcc GetSlotInX ; Post: X = Slot# << 4
|
||||
Bootstrap2
|
||||
lda #$00
|
||||
sta hd_unitnum,x ; b7=0 => disk 1
|
||||
sta hd_command,x
|
||||
lda hd_execute,x
|
||||
ror hd_status,x ; Post: C=0 or 1
|
||||
bcc hdboot
|
||||
|
||||
; no image ready, boot diskette image instead
|
||||
BootSlot6
|
||||
jmp slot6
|
||||
|
||||
;======================================
|
||||
; 2 unused bytes
|
||||
|
||||
@checkCs61
|
||||
*= $0061 ; org $0061
|
||||
!warn "Cs61 padding = ", * - @checkCs61
|
||||
|
||||
Entrypoint_Cs61 ; Apple Oasis HDD controller entrypoint
|
||||
; Keep this for any DOSMaster HDD images created with Apple Oasis HDD f/w.
|
||||
; DOSMaster hardcodes the entrypoint addr into its bootstrapping code:
|
||||
; - So DOSMaster images are tied to the HDD's controller's f/w
|
||||
sec
|
||||
bcs Entrypoint ; or directly to GetSlotInX
|
||||
|
||||
;======================================
|
||||
|
||||
; image ready. Lets boot from it.
|
||||
; we want to load block 1 from disk 1 to $800 then jump there
|
||||
; Pre: X = Slot# << 4
|
||||
; C = 0
|
||||
hdboot
|
||||
lda #$0
|
||||
sta unitnum ; b7=0 => disk 1
|
||||
sta memblock
|
||||
sta diskblock
|
||||
sta diskblock+1
|
||||
lda #$8
|
||||
sta memblock+1
|
||||
lda #$1
|
||||
sta command
|
||||
bne cmdproc
|
||||
hdboot2
|
||||
bcs BootSlot6
|
||||
|
||||
bit BUTTON0 ; button 0 pressed?
|
||||
bmi BootSlot6
|
||||
|
||||
; Pre: X = Slot# << 4
|
||||
jmp OS
|
||||
|
||||
;======================================
|
||||
|
||||
SmartPort2
|
||||
lda ($45),y ; diskblock_h
|
||||
sta $47
|
||||
|
||||
pla
|
||||
sta $46
|
||||
pla
|
||||
sta $45
|
||||
|
||||
sec
|
||||
; fall through...
|
||||
|
||||
;======================================
|
||||
|
||||
; Pre:
|
||||
; C=0 => via Bootstrap
|
||||
; C=1 => via Entrypoint / SmartPort2
|
||||
; Post:
|
||||
; X = Slot# << 4
|
||||
GetSlotInX
|
||||
php
|
||||
sei ; disable ints, in case an int handler races our $0000/RTS and stack accesses!
|
||||
|
||||
; NB. need RAM that's guaranteed to be both read & writeable:
|
||||
; . can't use $0200-$BFFF, due to eg. RAMRD=0/RAMWRT=1 combination
|
||||
; . can't use LC as ROM might be enabled.
|
||||
; So use ZP (specifically $0000) as whatever the state of ALTZP, both read & write will be to the same physical memory location.
|
||||
lda $00 ; save $00
|
||||
ldx #$60 ; opcode RTS
|
||||
stx $00
|
||||
jsr $0000 ; RTS immediately (NB. can't use $FF58, since LC RAM may be switched in)
|
||||
sta $00 ; restore $00
|
||||
tsx
|
||||
lda $0100,x ; $Cn
|
||||
asl
|
||||
asl
|
||||
asl
|
||||
asl
|
||||
tax ; X=$n0
|
||||
|
||||
plp ; + restore int status
|
||||
bcc Bootstrap2
|
||||
; otherwise fall through for Entrypoint / SmartPort...
|
||||
|
||||
;--------------------------------------
|
||||
|
||||
; entry point for ProDOS' block driver
|
||||
; simple really. Copy the command from $42..$47
|
||||
; to our I/O ports then execute command
|
||||
|
||||
; Pre:
|
||||
; C=0 => via Bootstrap (hdboot)
|
||||
; C=1 => via GetSlotInX (eg. Entrypoint / SmartPort2)
|
||||
; X = Slot# << 4
|
||||
; Post:
|
||||
; C = hd_status.b0
|
||||
; A = result of hd_execute
|
||||
; X = Slot# << 4
|
||||
cmdproc
|
||||
php
|
||||
|
||||
lda command
|
||||
sta hd_command,x
|
||||
lda unitnum
|
||||
sta hd_unitnum,x
|
||||
lda memblock
|
||||
sta hd_memblock,x
|
||||
lda memblock+1
|
||||
sta hd_memblock+1,x
|
||||
lda diskblock
|
||||
sta hd_diskblock,x
|
||||
lda diskblock+1
|
||||
sta hd_diskblock+1,x
|
||||
lda hd_execute,x ; A = result of hd_execute (NB. instantaneous 512 byte r/w!)
|
||||
|
||||
- rol hd_status,x ; b7=busy doing DMA?
|
||||
bcs -
|
||||
|
||||
plp ; restore C from start of cmdproc
|
||||
bcs done
|
||||
ror hd_status,x ; Post: C=0 or 1
|
||||
lda #0
|
||||
beq hdboot2
|
||||
|
||||
done
|
||||
ror hd_status,x ; Post: C=0 or 1
|
||||
rts
|
||||
|
||||
;======================================
|
||||
|
||||
; 33 unused bytes
|
||||
|
||||
!zone data
|
||||
|
||||
; $CsFE = status bits (BAP p7-14)
|
||||
; 7 = medium is removable
|
||||
; 6 = device is interruptable
|
||||
; 5-4 = number of volumes (0..3 means 1..4)
|
||||
; 3 = device supports Format call
|
||||
; 2 = device can be written to
|
||||
; 1 = device can be read from (must be 1)
|
||||
; 0 = device status can be read (must be 1)
|
||||
|
||||
; $C7 = Removable, Interruptable, #Volumes=1, Supports write/read/status
|
||||
; $D7 = Removable, Interruptable, #Volumes=2, Supports write/read/status
|
||||
; $BF = Removable, Interruptable, #Volumes=4, Supports format/write/read/status (KEGS / IIGS)
|
||||
|
||||
; datablock. This starts near the end of the firmware (at offset $FC)
|
||||
;; data
|
||||
@checkCsFC
|
||||
*= $00FC ; org $00FC
|
||||
!warn "CsFC padding = ", * - @checkCsFC
|
||||
|
||||
!word $7fff ; how many blocks are on the device.
|
||||
!byte $D7 ; specifics about the device (number of drives, read/write/format capability, etc)
|
||||
!byte <Entrypoint_ProDOS ; entry point offset for ProDOS (must be $0a)
|
|
@ -1,15 +0,0 @@
|
|||
[OPTIONS]
|
||||
Binary Index=No
|
||||
Compatibility=1.1 or later
|
||||
Compiled file=AppleWin.chm
|
||||
Contents file=Table of Contents.hhc
|
||||
Default Font=Arial,10,0
|
||||
Default topic=toc.html
|
||||
Display compile progress=No
|
||||
Full-text search=Yes
|
||||
Language=0x409 English (United States)
|
||||
Title=Apple //e Emulator for Windows
|
||||
|
||||
|
||||
[INFOTYPES]
|
||||
|
|
@ -1,196 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>Command line</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body style="FONT-FAMILY: verdana; BACKGROUND-COLOR: rgb(255,255,255)" alink="#008000"
|
||||
link="#008000" vlink="#008000">
|
||||
<h2 style="COLOR: rgb(0,128,0)">Command line</h2>
|
||||
<hr size="4">
|
||||
<p style="FONT-WEIGHT: bold">AppleWin can be driven from the command line as
|
||||
follows:
|
||||
</p>
|
||||
-conf <pathname><br>
|
||||
Use an INI file for configuration instead of the Registry.<br>
|
||||
Use this switch if you want to have multiple copies of AppleWin with different configurations, or don't want to use the Registry.<br><br>
|
||||
-current-dir <path><br>
|
||||
This is guaranteed to be processed after all the image loading switches (eg. -d1, -h1, etc).<br>
|
||||
Use this switch if you have a mix of (eg) -d1 and -h1 loading images from different folders, and you want to guarantee the current dir.<br><br>
|
||||
-d1 <pathname><br>
|
||||
Start with a floppy disk in slot 6 drive-1 (and auto power-on the Apple II).<br>
|
||||
NB. -s6d1 has the meaning same as -d1.<br><br>
|
||||
-d2 <pathname><br>
|
||||
Start with a floppy disk in slot 6 drive-2.<br>
|
||||
NB. -s6d2 has the meaning same as -d2.<br><br>
|
||||
-s5d1 <pathname><br>
|
||||
Start with a floppy disk in slot 5 drive-1 (must be used with '-s5 diskii').<br><br>
|
||||
-s5d2 <pathname><br>
|
||||
Start with a floppy disk in slot 5 drive-2 (must be used with '-s5 diskii').<br><br>
|
||||
-h1 <pathname><br>
|
||||
Start with hard disk 1 plugged-in (and auto power-on the Apple II). NB. Hard disk controller card gets enabled.<br><br>
|
||||
-h2 <pathname><br>
|
||||
Start with hard disk 2 plugged-in. NB. Hard disk controller card gets enabled.<br><br>
|
||||
NB. For -d1,-d2,-s5d1,-s5d2,-h1,-h2, if pathname is "", then the disk is ejected or the harddisk is unplugged.<br><br>
|
||||
-model <apple2|apple2p|apple2jp|apple2e|apple2ee><br>
|
||||
Select the machine model: Apple II, Apple II+, Apple II J-Plus, Apple //e, Enhanced Apple //e.<br><br>
|
||||
-clock-multiplier <value><br>
|
||||
Where value is between 0.5 and 3.9, and is a base-clock multiplier, roughly mapping to 0.5MHz - 3.9MHz<br><br>
|
||||
-s0 <saturn|saturn64|saturn128><br>
|
||||
Insert a Saturn 64K or Saturn 128K card into slot 0 in the Apple II or II+ machines (or similar clone).<br>
|
||||
Where -s0 saturn is an alias for -s0 saturn128.<br><br>
|
||||
-s0 <languagecard|lc><br>
|
||||
Insert an Apple 16K Language Card into slot 0 in the original Apple II and use the F8 auto-start ROM.<br>
|
||||
NB. The Apple II+ already defaults to having a Language Card, so this switch is not required.<br><br>
|
||||
-s1 empty<br>
|
||||
Remove the parallel printer card from slot 1.<br><br>
|
||||
-s1 parallel<br>
|
||||
Insert a parallel printer card into slot 1.<br><br>
|
||||
-s2 empty<br>
|
||||
Remove the SSC card from slot 2.<br><br>
|
||||
-s3 empty<br>
|
||||
Remove the Uthernet card from slot 3.<br><br>
|
||||
-s3 vidhd<br>
|
||||
Insert a VidHD card into slot 3.<br><br>
|
||||
-s5 diskii<br>
|
||||
Insert a 2nd Disk II controller card into slot 5.<br><br>
|
||||
-s6 empty<br>
|
||||
Remove the Disk II controller card from slot 6.<br><br>
|
||||
-s7 empty<br>
|
||||
Remove the hard disk controller card from slot 7.<br>
|
||||
Useful to allow a floppy disk to boot from slot 6, drive 1. Use in combination with -d1.<br><br>
|
||||
-s7-empty-on-exit<br>
|
||||
Remove the hard disk controller card from slot 7 on AppleWin exit.<br><br>
|
||||
-d1-disconnected, -d2-disconnected<br>
|
||||
Disconnect drive-1 and/or drive-2 from the Disk II controller card in slot 6.<br><br>
|
||||
-no-nsc<br>
|
||||
Remove the No-Slot clock (NSC).<br><br>
|
||||
-r <number of pages><br>
|
||||
Emulate a RamWorks III card with 1 to 127 pages (each page is 64K, giving a max of 8MB) in the auxiliary slot in an Apple //e machine.<br><br>
|
||||
-load-state <savestate><br>
|
||||
Load a save-state file (and auto power-on the Apple II).<br>
|
||||
NB. This takes precedent over the -d1, -d2, -s#d#, -h1, -h2, s0-7, -model and -r switches.<br><br>
|
||||
-f or -full-screen<br>
|
||||
Start in full-screen mode.<br><br>
|
||||
-no-full-screen<br>
|
||||
Start in Windowed mode (default).<br><br>
|
||||
-fs-height=<best|nnnn><br>
|
||||
Use to select a better resolution for full-screen mode.<br>
|
||||
<ul>
|
||||
<li>best: picks the highest resolution where the height is an integer multiple of (192*2)</li>
|
||||
<li>nnnn: select a specific resolution with height=nnnn pixels</li>
|
||||
</ul>
|
||||
NB. Combine with <em>-no-full-screen</em> to start in Windowed mode. Without this it'll just default to full-screen.<br>
|
||||
NB. When switching to Windowed mode the default desktop resolution will be restored, and when switching back to full-screen mode this better resolution will again be used.<br><br>
|
||||
-rom <file><br>
|
||||
Use custom 12K ROM (at $D000) for Apple II machine, or 16K ROM (at $C000) for Apple //e machine.<br><br>
|
||||
-f8rom <file><br>
|
||||
Use custom 2K ROM for any Apple II machine at [$F800..$FFFF]. <file> must be 2048 bytes long.<br><br>
|
||||
-videorom <file><br>
|
||||
Use an alternate custom 2K video ROM for Apple II or II+ machines (but not clones).<br>
|
||||
Use an alternate European or custom 4K, 8K or 16K (top 8K only) video ROM for the original or Enhanced //e (but not clones).<br><br>
|
||||
-printscreen<br>
|
||||
Enable the dialog box to display the last file saved to<br><br>
|
||||
-no-printscreen-key<br>
|
||||
Prevent the PrintScreen key from being registered<br><br>
|
||||
-no-hook-system-key<br>
|
||||
Prevent certain system key combinations from being hooked (to prevent the emulator from trapping ALT+ESC, ALT+SPACE, ALT+TAB and CTRL+ESC). This means that the equivalent Open Apple+<key> combinations won't work within the emulator.<br>
|
||||
NB. This switch takes precedence over -hook-alt-tab and -hook-altgr-control.<br><br>
|
||||
-no-hook-alt<br>
|
||||
Prevent the left and right ALT keys from being hooked (eg. to prevent emulation of Open/Solid Apple keys via the ALT keys).<br><br>
|
||||
-hook-alt-tab<br>
|
||||
By default the emulator doesn't hook ALT+TAB. Use this to allow Open Apple+TAB to be readable by the emulated machine.<br><br>
|
||||
-hook-altgr-control<br>
|
||||
By default the emulator doesn't suppress AltGr's (Right Alt's) fake LEFT CONTROL. Use this to suppress this fake LEFT CONTROL to allow Solid Apple+CTRL+<key> to be readable by the emulated machine.<br>
|
||||
NB. Suppressing this fake LEFT CONTROL seems to prevent international keyboards from being able to type certain keys.<br><br>
|
||||
-altgr-sends-wmchar<br>
|
||||
Use this switch to allow Solid Apple (AltGr) to be used in combination with regular keys.<br>
|
||||
When AltGr is pressed, Windows only sends a WM_CHAR message for (eg) international key codes; and so by default the emulator doesn't explicitly send a WM_CHAR message for regular keys when AltGr is being pressed.<br>
|
||||
NB. Using this switch may prevent international keyboards from being able to type certain keys.<br><br>
|
||||
|
||||
-left-alt-control-buttons<br>
|
||||
Use Left Control & Left Alt for Open Apple & Solid Apple keys respectively.<br>
|
||||
Caveat: Left Control + F2 will do the //e Ctrl+Open Apple+RESET (as Left Control is now both Ctrl and Open Apple!). A workaround is just to use the Right Control key.<br><br>
|
||||
-right-alt-control-buttons<br>
|
||||
Use Right Alt (AltGr) & Right Control for Open Apple & Solid Apple keys respectively.<br>
|
||||
Caveat: Right Control + F2 will do the //e self test (as Right Control is now both Ctrl and Solid Apple!). A workaround is just to use the Left Control key.<br><br>
|
||||
-swap-buttons<br>
|
||||
Swap buttons 0 and 1 for all input devices.<br>
|
||||
EG. the Windows keys used for Open Apple & Solid Apple keys, and the current device being used to emulate a joystick (keyboard, real joystick or mouse)<br><br>
|
||||
|
||||
-use-real-printer<br>
|
||||
Enables Advanced configuration control to allow dumping to a real printer<br><br>
|
||||
-noreg<br>
|
||||
Disable registration of file extensions (.do/.dsk/.nib/.po/.woz)<br><br>
|
||||
-memclear <n><br>
|
||||
Where n is [0..7]:
|
||||
<ul>
|
||||
<li>0 Initialize memory to zero</li>
|
||||
<li>1 Initialize memory to random values</li>
|
||||
<li>2 Initialize memory to 4 byte pattern: FF FF 00 00</li>
|
||||
<li>3 Initialize memory to even pages FF, odd pages 00</li>
|
||||
<li>4 Initialize memory to first half page 00, last half page FF</li>
|
||||
<li>5 Initialize memory to first half page FF, last half page 00</li>
|
||||
<li>6 Initialize memory to byte offset of that page
|
||||
(current memory address low byte)
|
||||
i.e. 00:00 01 02 03 ... for page $20</li>
|
||||
<li>7 Initialize memory to page address
|
||||
(current memory address high byte)
|
||||
i.e. 00:20 20 20 20 ... for page $20</li>
|
||||
</ul>
|
||||
-modem<br>
|
||||
Shorthand for passing -dcd<br>
|
||||
Use with GBBS Pro (or any other BBS package). See the <a href="http://www.callapple.org/documentation/books/gbbs-pro-2-2/">GBBS Pro 2.2</a> book from Call-A.P.P.L.E.
|
||||
<br><br>
|
||||
-dcd<br>
|
||||
For the SSC's 6551's Status register's DCD bit, use this switch to force AppleWin to use the state of the MS_RLSD_ON bit from GetCommModemStatus().<br><br>
|
||||
-alt-enter=<toggle-full-screen|open-apple-enter><br>
|
||||
Define the behavior of Alt+Enter:
|
||||
<ul>
|
||||
<li>Either: Toggle between windowed and full screen video modes (default).</li>
|
||||
<li>Or: Allow the emulated Apple II to read the Enter key state when Alt (Open Apple key) is pressed.</li>
|
||||
</ul>
|
||||
-rgb-card-type <apple|sl7|eve|feline><br>
|
||||
<ul>
|
||||
<li><i>apple</i> is Apple's Extended 80-Column Text/AppleColor Adaptor Card (default).</li>
|
||||
<li><i>sl7</i> is Video-7's RGB-SL7 card.</li>
|
||||
<ul>
|
||||
<li>NB. Both these apple/sl7 cards support an extra foreground/background hi-res mode that can be triggered by AN3 switching, resulting in corrupt color graphics! See <a href="Troubleshooting.html">troubleshooting</a>.
|
||||
</ul>
|
||||
<li><i>eve/feline</i> are Le Chat Mauve variants.</li>
|
||||
</ul>
|
||||
Use in conjunction with the 'Color (RGB Card/Monitor)' video mode.<br><br>
|
||||
-rgb-card-foreground <n><br>
|
||||
-rgb-card-background <n><br>
|
||||
Where n is [0..15]. Defaults are foreground=15(White) and background=0(Black).<br>
|
||||
The only supported DIPSW colors are: Black=0, Blue=6, Orange=9, Green=12, White=15<br>
|
||||
NB. Only supported by '-rgb-card-type <apple|sl7>'.<br>
|
||||
Use in conjunction with the 'Color (RGB Card/Monitor)' video mode.<br><br>
|
||||
-rgb-card-invert-bit7<br>
|
||||
Force the RGB card to invert bit7 in MIX mode. Enables the correct rendering for Dragon Wars.<br>
|
||||
Use in conjunction with the 'Color (RGB Card/Monitor)' video mode.<br><br>
|
||||
-50hz<br>
|
||||
Support 50Hz(PAL) video refresh rate and PAL 1.016MHz base CPU clock.<br><br>
|
||||
-60hz<br>
|
||||
Support 60Hz(NTSC) video refresh rate and NTSC 1.020MHz base CPU clock (default).<br><br>
|
||||
-power-on<br>
|
||||
Force a power-on.<br>
|
||||
Use to auto power-on when not using -d1, -h1 or -load-state.<br><br>
|
||||
-snes-max-alt-joy1 or -snes-max-alt-joy2<br>
|
||||
Use alternate button mappings for the SNES MAX card. See <a href="cfg-input.html">Input Settings</a>.<br>
|
||||
|
||||
<br>
|
||||
<P style="FONT-WEIGHT: bold">Debug arguments:
|
||||
</P>
|
||||
-l or -log<br>
|
||||
Enable logging. Creates an AppleWin.log file.<br><br>
|
||||
-m<br>
|
||||
Disable DirectSound support.<br><br>
|
||||
-no-printscreen-dlg<br>
|
||||
Suppress the warning message-box if AppleWin fails to capture the PrintScreen key.<br>
|
||||
NB. There's now a "Don't show this message again" option on this message-box.
|
||||
<br><br>
|
||||
-screenshot-and-exit<br>
|
||||
For testing. Use in combination with -load-state.<br><br>
|
||||
</body>
|
||||
</html>
|
|
@ -1,243 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
|
||||
<HTML>
|
||||
<HEAD>
|
||||
<meta name="GENERATOR" content="Microsoft® HTML Help Workshop 4.1">
|
||||
<!-- Sitemap 1.0 -->
|
||||
</HEAD><BODY>
|
||||
<OBJECT type="text/site properties">
|
||||
<param name="Window Styles" value="0x800425">
|
||||
<param name="ImageType" value="Folder">
|
||||
</OBJECT>
|
||||
<UL>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Table of Contents">
|
||||
<param name="Local" value="toc.html">
|
||||
<param name="ImageNumber" value="2">
|
||||
</OBJECT>
|
||||
<UL>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="AppleWin Team">
|
||||
<param name="Local" value="AppleWin-team.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Acknowledgements">
|
||||
<param name="Local" value="Acknowledgements.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Quick Start">
|
||||
<param name="Local" value="quickstart.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Historical Information">
|
||||
<param name="Local" value="history.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Disks And Disk Images">
|
||||
<param name="Local" value="diskimages.html">
|
||||
<param name="ImageNumber" value="2">
|
||||
</OBJECT>
|
||||
<UL>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Introduction to Disk Images">
|
||||
<param name="Local" value="ddi-intro.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Loading Disk Images">
|
||||
<param name="Local" value="ddi-load.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Creating Disk Images">
|
||||
<param name="Local" value="ddi-create.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Transferring Disk Images">
|
||||
<param name="Local" value="ddi-transfer.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Copy Protected Disks">
|
||||
<param name="Local" value="ddi-copy.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Disk Image Formats">
|
||||
<param name="Local" value="ddi-formats.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Hard Disk Images">
|
||||
<param name="Local" value="ddi-harddisk.html">
|
||||
</OBJECT>
|
||||
</UL>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Using The Toolbar">
|
||||
<param name="Local" value="toolbar.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Using the Keyboard">
|
||||
<param name="Local" value="keyboard.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Save-state Files">
|
||||
<param name="Local" value="savestate.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Command line">
|
||||
<param name="Local" value="CommandLine.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Sound">
|
||||
<param name="Local" value="sound.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Clock">
|
||||
<param name="Local" value="clock.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Super Serial Card">
|
||||
<param name="Local" value="card-ssc.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Uthernet network card">
|
||||
<param name="Local" value="uthernet.html">
|
||||
<param name="ImageNumber" value="2">
|
||||
</OBJECT>
|
||||
<UL>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="WiFi workaround">
|
||||
<param name="Local" value="uthernet-wifi-workaround.html">
|
||||
</OBJECT>
|
||||
</UL>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="AppleWin Configuration">
|
||||
<param name="Local" value="configuration.html">
|
||||
<param name="ImageNumber" value="2">
|
||||
</OBJECT>
|
||||
<UL>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Configuration Settings">
|
||||
<param name="Local" value="cfg-config.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Input Settings">
|
||||
<param name="Local" value="cfg-input.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Sound Settings">
|
||||
<param name="Local" value="cfg-sound.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Disk / Drive Settings">
|
||||
<param name="Local" value="cfg-disk.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Advanced Settings">
|
||||
<param name="Local" value="cfg-Advanced.html">
|
||||
<param name="ImageNumber" value="2">
|
||||
</OBJECT>
|
||||
<UL>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Pravets Clones">
|
||||
<param name="Local" value="cfg-Advanced-Pravets.html">
|
||||
</OBJECT>
|
||||
</UL>
|
||||
<UL>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="The Freeze's F8 rom">
|
||||
<param name="Local" value="cfg-Advanced-freeze-rom.html">
|
||||
</OBJECT>
|
||||
</UL>
|
||||
</UL>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Debugger">
|
||||
<param name="Local" value="dbg-toc-intro.html">
|
||||
<param name="ImageNumber" value="2">
|
||||
</OBJECT>
|
||||
<UL>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Entering & exiting the debugger">
|
||||
<param name="Local" value="dbg-entering-debugger.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Debugger Screen Layout">
|
||||
<param name="Local" value="dbg-screen-layout.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Scrolling">
|
||||
<param name="Local" value="dbg-scrolling.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Registers">
|
||||
<param name="Local" value="dbg-registers.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Flags">
|
||||
<param name="Local" value="dbg-flags.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Execution">
|
||||
<param name="Local" value="dbg-execution.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Memory">
|
||||
<param name="Local" value="dbg-memory.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Symbols">
|
||||
<param name="Local" value="dbg-symbols.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Calculator">
|
||||
<param name="Local" value="dbg-calculator.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Windows">
|
||||
<param name="Local" value="dbg-windows.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Breakpoints">
|
||||
<param name="Local" value="dbg-breakpoints.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Bookmarks">
|
||||
<param name="Local" value="dbg-bookmarks.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Configuration">
|
||||
<param name="Local" value="dbg-configuration.html">
|
||||
</OBJECT>
|
||||
</UL>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Resources">
|
||||
<param name="Local" value="resources.html">
|
||||
<param name="ImageNumber" value="2">
|
||||
</OBJECT>
|
||||
<UL>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Internet Newsgroups">
|
||||
<param name="Local" value="newsgroups.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Internet Sites">
|
||||
<param name="Local" value="ftp.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Contacting the Developers">
|
||||
<param name="Local" value="contact.html">
|
||||
</OBJECT>
|
||||
</UL>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Appendix">
|
||||
<param name="Local" value="appendix.html">
|
||||
<param name="ImageNumber" value="2">
|
||||
</OBJECT>
|
||||
<UL>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Full-speed mode">
|
||||
<param name="Local" value="fullspeed.html">
|
||||
</OBJECT>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Troubleshooting">
|
||||
<param name="Local" value="Troubleshooting.html">
|
||||
</OBJECT>
|
||||
</UL>
|
||||
</UL>
|
||||
</UL>
|
||||
</BODY></HTML>
|
|
@ -1,83 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>Troubleshooting</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body style="FONT-FAMILY: verdana; BACKGROUND-COLOR: rgb(255,255,255)" alink="#008000"
|
||||
link="#008000" vlink="#008000">
|
||||
<h2 style="COLOR: rgb(0,128,0)">Troubleshooting</h2>
|
||||
<hr size="4">
|
||||
<p style="FONT-WEIGHT: bold">Here is a list of issues and possible solutions:</p>
|
||||
|
||||
Uthernet network card not working.
|
||||
<ul>
|
||||
<li>There are problems when running with certain firewalls (eg. ZoneAlarm).
|
||||
<ul>
|
||||
<li>See the Uthernet network card section for details.</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
AppleWin doesn't startup.
|
||||
<ul>
|
||||
<li>It could be being blocked by your anti-virus software. There is a known problem with Constant Guard Protection Suite.
|
||||
<ul>
|
||||
<li>From your anti-virus software, unblock AppleWin to allow it to run.</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
When using a non-US (or UK) keyboard, certain keys can't be typed.
|
||||
<ul>
|
||||
<li>AltGr (or right Alt) needs to be used to type certain keys, eg:
|
||||
<ul>
|
||||
<li>'@' is AltGr+2 (for a Canadian-French keyboard).</li>
|
||||
<li>'[' is AltGr+é (for an Italian keyboard).</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>Some games or productivity software have an action based on the Open Apple (Alt) or Solid Apple (AltGr) keys, eg:
|
||||
<ul>
|
||||
<li>Lode Runner uses CTRL+@ to increase the lives.</li>
|
||||
<li>AppleLogo // and AppleWorks 5.1 have problems when using an Italian keyboard.</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>This dual function for AltGr (to both type a key and emulate Solid Apple) can cause problems such that the key (eg. '@') can never be typed.</li>
|
||||
<li>The workaround is to use the `-no-hook-alt` command line switch and configure Joystick 1 = "Keyboard (numpad)"; and then use the '0' and '.' keys for Open/Solid Apple.</li>
|
||||
</ul>
|
||||
|
||||
No Apple II speaker sound, but Mockingboard sound is working!
|
||||
<ul>
|
||||
<li>Check the Volume Control for the Speaker, under the <a href="cfg-sound.html">Configuration->Sound tab</a>.</li>
|
||||
<li>Try installing the Realtek-specific audio driver supplied by ASUS (as opposed to the default Win10 driver).</li>
|
||||
</ul>
|
||||
|
||||
Color (RGB Card/Monitor) and title compatibility issues:
|
||||
<ul>
|
||||
<li>Dragon Wars: double hi-res bit7 needs inverting, so use the -rgb-card-invert-bit7 command line switch.</li>
|
||||
<li>Renegade: switches to 160x192 mode at the title screen and then B&W (at the title screen) after game play.</li>
|
||||
<li>Apple's AppleColor card or Video7's RGB-SL7 card: corruption for titles/demos that accidentally switch to foreground/background hi-res mode, eg. French Touch DIGIDREAM demo.</li>
|
||||
</ul>
|
||||
|
||||
Can't switch to 2x windowed mode:
|
||||
<ul>
|
||||
<li>If the resolution isn't high enough to support 2x windowed mode, then AppleWin will refuse to switch.</li>
|
||||
<li>For different versions of Windows this is slightly different:</li>
|
||||
<ul>
|
||||
<li>Windows 7 requires: 1181 x 808</li>
|
||||
<li>Windows 10 (1909) requires: 1181 x 818</li>
|
||||
</ul>
|
||||
</ul>
|
||||
|
||||
Can't set bookmark 0 in the debugger / CTRL+SHIFT+0 not working:
|
||||
<img style="FLOAT: right;" src="img/Change Key Sequence.png" alt="Configuration settings" hspace="5" vspace="5">
|
||||
<ul>
|
||||
<li>From Control Panel...".</li>
|
||||
<ul>
|
||||
<li>Windows 7: Change keyboards or other input methods -> 'Keyboards and Languages' tab -> Change Keyboards -> 'Advanced Key Settings' -> Change Key Sequence...</li>
|
||||
<li>Windows 10: Typing -> Advanced Keyboard Settings -> Input language hot keys -> Change Key Sequence...</li>
|
||||
</ul>
|
||||
<li>Finally set "Switch Keyboard Layout" to "Not Assigned".</li>
|
||||
</ul>
|
||||
</body>
|
||||
</html>
|
|
@ -1,30 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>Acknowledgements</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body style="FONT-FAMILY: verdana; BACKGROUND-COLOR: rgb(255,255,255)" alink="#008000"
|
||||
link="#008000" vlink="#008000">
|
||||
<h2 style="COLOR: rgb(0,128,0)">Acknowledgements</h2>
|
||||
<hr size="4">
|
||||
<p>The team would like to thank the following people for their contributions:</p>
|
||||
<p style="MARGIN-LEFT: 40px">Brian Broker: This HTML / CHM help file</p>
|
||||
<p style="MARGIN-LEFT: 40px">Thomas Stahl: TV emulation mode (up to v1.25.0.4)</p>
|
||||
<p style="MARGIN-LEFT: 40px">Greg Hedger: SSI263 phoneme samples</p>
|
||||
<p style="MARGIN-LEFT: 40px">Robert Hoem: Hard disk card (source module & f/w)</p>
|
||||
<p style="MARGIN-LEFT: 40px">VICE team: TFE, Z80, MC6821 PIA emulation modules (<a href="http://vice-emu.sourceforge.net/index.html#developers">http://vice-emu.sourceforge.net/index.html#developers</a>)<br>
|
||||
- In particular, Spiro Trikaliotis for TFE, whose code Glenn Jones adapted for Uthernet support</p>
|
||||
<p style="MARGIN-LEFT: 40px">FUSE team: AY-3-8910 module (<a href="http://fuse-emulator.sourceforge.net">http://fuse-emulator.sourceforge.net</a>)</p>
|
||||
<p style="MARGIN-LEFT: 40px">Kyle Kim: Mouse card support based on code from Apple in PC</p>
|
||||
<p style="MARGIN-LEFT: 40px">Fábio Belavenuto: TK3000 Brazilian //e clone (originally responsible for integrating Z80Em)</p>
|
||||
<p style="MARGIN-LEFT: 40px">Bob Sander-Cederlof: Applesoft Symbols (<a href="http://www.txbobsc.com/scsc/scdocumentor/index.html">http://www.txbobsc.com/scsc/scdocumentor/</a> S-C DocuMentor: Applesoft)</p>
|
||||
<p style="MARGIN-LEFT: 40px">David Schmidt: Updates to this help file</p>
|
||||
<p style="MARGIN-LEFT: 40px">Mike Harvey, Founder & Editor of Nibble Magazine: For providing us Apple fans the pleasure of eagerly awaiting each next month's issue to learn about the Apple! (<a href="http://www.nibblemagazine.com/">http://www.nibblemagazine.com/</a>)</p>
|
||||
<p style="MARGIN-LEFT: 40px">Andrea Odetti: working on making the source code more portable & Uthernet II card support</p>
|
||||
<p style="MARGIN-LEFT: 40px">Iván Izaguirre: Taiwanese Copam Base64A Apple II clone</p>
|
||||
<p style="MARGIN-LEFT: 40px">Arnaud C: debugger suggestions and help with 6502/6522/video timing issues</p>
|
||||
<p style="MARGIN-LEFT: 40px">Cyril Lambin: RGB card/monitor rendering, debugger improvements</p>
|
||||
<p style="MARGIN-LEFT: 40px">Alex Lukacz: 4Play & SNES MAX card support</p>
|
||||
</body>
|
||||
</html>
|
|
@ -1,24 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
<title>Appendix</title>
|
||||
|
||||
|
||||
</head>
|
||||
|
||||
|
||||
<body style="background-color: rgb(255, 255, 255); font-family: verdana;" alink="#008000" link="#008000" vlink="#008000">
|
||||
|
||||
<h2 style="color: rgb(0, 128, 0);">Appendix</h2>
|
||||
|
||||
<hr size="4">
|
||||
|
||||
<ul>
|
||||
<li><a href="fullspeed.html">Full-speed mode</a></li>
|
||||
<li><a href="Troubleshooting.html">Troubleshooting</a></li>
|
||||
</ul>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -1,22 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>AppleWin Team</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body style="FONT-FAMILY: verdana; BACKGROUND-COLOR: rgb(255,255,255)" alink="#008000"
|
||||
link="#008000" vlink="#008000">
|
||||
<h2 style="COLOR: rgb(0,128,0)">
|
||||
AppleWin team</h2>
|
||||
<hr size="4">
|
||||
<p>Tom Charlesworth (Project lead)</p>
|
||||
<p>Michael Pohoreski (Debugger rewrite, Half Pixel Video support, Miscellaneous user interface enhancements)</p>
|
||||
<p>Nick Westgate (Floating bus support, Parallel printer)</p>
|
||||
<p>Linards Ticmanis (Illegal/undefined opcodes)</p>
|
||||
<p>Glenn Jones (Uthernet card)</p>
|
||||
<p>Stannev (Pravets - Bulgarian Apple][ clone)</p>
|
||||
<p>Ken Wessen (porting CP/M support from Fábio Belavenuto's TK3000 //e emulator)</p>
|
||||
<p>Sheldon Simms (2x windowed mode & NTSC emulation)</p>
|
||||
<p>Oliver Schmidt (Consulting)</p>
|
||||
</body>
|
||||
</html>
|
|
@ -1,86 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>Super Serial Card</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body style="FONT-FAMILY: verdana; BACKGROUND-COLOR: rgb(255,255,255)" alink="#008000"
|
||||
link="#008000" vlink="#008000">
|
||||
<h2 style="COLOR: rgb(0,128,0)">Super Serial Card</h2>
|
||||
<hr size="4">
|
||||
<h3>Super Serial Card:</h3>
|
||||
<p>AppleWin emulates a Super Serial Card (aka SSC) in slot-2, with the jumper block in the MODEM position.</p>
|
||||
<p>The SSC can be configured to communicate externally either via the host PC's COM serial port or TCP port 1977.</p>
|
||||
|
||||
<p>See the <a href="cfg-config.html">Configuration</a> tab's 'Serial Port' menu to select a COM serial port or the TCP port.</p>
|
||||
|
||||
<p>The SSC currently has these <strong>hardcoded</strong> DIP switch settings:</p>
|
||||
<ul>
|
||||
<li>DIP SW1:
|
||||
<ul>
|
||||
<li>Baud rate = 9600
|
||||
<li>Mode = CIC (ie. SSC's Communication Mode)
|
||||
</ul>
|
||||
<li>DIP SW2:
|
||||
<ul>
|
||||
<li>1 stop-bit
|
||||
<li>8-bit byte size
|
||||
<li>No parity
|
||||
<li>Linefeed off
|
||||
<li>Interrupts enabled
|
||||
</ul>
|
||||
</ul>
|
||||
|
||||
<p>Notes:</p>
|
||||
<ul>
|
||||
<li>The SSC emulation supports both Rx and Tx interrupts (for both COM and TCP modes), RTS/CTS, DSR/DTR, and the undocumented 115200 baud rate.
|
||||
<li>For the TCP mode it doesn't matter what baud rate, stop-bit, byte size and parity are set to.
|
||||
<ul>
|
||||
<li>It always uses an unthrottled data-rate of 8-bit bytes (no stop-bit, no parity).
|
||||
<li>When there's an active TCP connection, then the 6551's Status register has DCD,DSR bits clear (active low), and DIPSW2 has CTS bit clear (active low). When there's no TCP connection, then all these bits are set (inactive).
|
||||
</ul>
|
||||
<li>The TCP mode can expose buggy Rx interrupt handling code where the 6551's Status register is read more than once in the Interrupt Service Routine (ISR).
|
||||
<ul>
|
||||
<li>Details: TCP mode doesn't throttle the serial data-rate, so after reading the Status register (to clear the Rx interrupt) the Rx interrupt may get asserted immediately if there is more data in the TCP receive buffer, resulting in a missed interrupt (and therefore missed Rx data).
|
||||
</ul>
|
||||
<li>The 6551's Command register's DSR (bit0) must be set, to enable interrupts (Rx, Tx) along with the respective Rx and/or Tx bits (bit3:1). This is part of the 6551 specification, but (DSR bit) has only been enforced by AppleWin since 1.27.4.
|
||||
</ul>
|
||||
|
||||
<p>Unsupported features are:</p>
|
||||
<ul>
|
||||
<li>Can't configure the DIP switches (not a problem, since most functions can be set in software).
|
||||
<li>6551 ACIA Command register: Echo mode(bit4=1) and Transmit BRK (bit3:2=3).
|
||||
<li>6551 ACIA Control register: external clock (bit4=0).
|
||||
<li>6551 ACIA baud rates: 50, 75, 109.92, 134.58, 150 all map to 110 baud.
|
||||
<li>6551 ACIA baud rate: 1800 maps to 2400 baud.
|
||||
<li>6551 ACIA baud rate: 3600 maps to 4800 baud.
|
||||
<li>6551 ACIA baud rate: 7200 maps to 9600 baud.
|
||||
<li>6551 ACIA Status register's error bits: overrun, framing and parity (these are all hardcoded to 0).
|
||||
<li>6551 ACIA Status register's DCD bit (Data Carrier Detect). This is just set the same as DSR.
|
||||
<ul>
|
||||
<li>NB. For COM mode, use command line -dcd to force AppleWin to use the state of the MS_RLSD_ON bit from GetCommModemStatus().
|
||||
</ul>
|
||||
<li>NMOS 6551 ACIA CTS bug: transmission of an already-started frame will stop immediately when CTS is taken false, the byte will be lost, and the TxD line will go to marking.
|
||||
<ul>
|
||||
<li>NB. The CMOS 6551's will finish the frame, so assume that AppleWin emulates a CMOS 6551.
|
||||
</ul>
|
||||
<li>AppleWin's 6502/65C02 emulation doesn't emulate the false read for STA $C088,X (where X=$20).
|
||||
<ul>
|
||||
<li>Don't do this to write to the 6551's Transmit register.
|
||||
<li>On AppleWin this is fine, but on real hardware (in full duplex mode) you may falsely read (and clear) the 6551's Receive register.
|
||||
<li>Instead (like the SSC's firmware) do this: STA $BFFF,Y (where Y=$A9).
|
||||
</ul>
|
||||
</ul>
|
||||
<br>
|
||||
<br>
|
||||
|
||||
<h4>Using TCP mode with the Apple // Game Server:</h4>
|
||||
The TCP interface to the SSC can be used by the <a href="https://sourceforge.net/projects/a2gameserver">Apple // Game Server</a> (AGS).<br>
|
||||
For details see the notes that comes with AGS, but in summary:<br>
|
||||
<ul>
|
||||
<li>Boot the Apple II to AppleSoft (ie. power on and hit Ctrl-Reset) and type IN#2.
|
||||
<li>From a Windows DOS box, start AGS with "localhost 1977 apple2e". This will boot the emulated Apple II from AGS.
|
||||
<li>Nb. Only Enhanced Apple //e is working at the moment.
|
||||
</ul>
|
||||
</body>
|
||||
</html>
|
|
@ -1,57 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
<title>Advanced Settings</title>
|
||||
|
||||
|
||||
</head>
|
||||
|
||||
<span style="font-family: Courier">
|
||||
=-------------------------------------=<br>
|
||||
=-> Freeze's F-8 ROM A PPG release <-=<br>
|
||||
=-------------------------------------=<br>
|
||||
|
||||
The Freeze's F-8 ROM is a modified F-8<br>
|
||||
rom that has several added features.<br><br>
|
||||
|
||||
-Old Monitor Reset<br>
|
||||
-Step and Trace modes<br>
|
||||
-Disassembly with ASCII<br>
|
||||
-Disassembly with Binary in #Mode<br>
|
||||
-Better sounding bell!<br><br>
|
||||
|
||||
These advanced features make Monitor<br>
|
||||
programming and Cracking much easier.<br><br>
|
||||
|
||||
There are two ways you can use this<br>
|
||||
program. Either load it into the RAM<br>
|
||||
Card using the FREEZE.INSTALL program.<br>
|
||||
The other way is to burn it onto a<br>
|
||||
2716 EPROM (Schematics later).<br><br>
|
||||
|
||||
The only thing that really need an<br>
|
||||
explanation is the disassembly. In the<br>
|
||||
disassembly, it displays the ASCII<br>
|
||||
value of the byte to the right. The<br>
|
||||
binary numbers on the far right are<br>
|
||||
displayed when an instruction on the<br>
|
||||
accumulator in immediate mode is<br>
|
||||
encountered.<br><br>
|
||||
|
||||
2716 Schematics<br>
|
||||
===============<br><br>
|
||||
|
||||
I would suggest that you do these<br>
|
||||
modifications to a socket rather than<br>
|
||||
directly to the chip...<br><br>
|
||||
|
||||
First, cut off pins 21 and 18.<br>
|
||||
Connect pins 12 and 18<br>
|
||||
Connect pins 21 and 24<br>
|
||||
|
||||
--------------------------------------- </span>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -1,52 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>Pravets Clones</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body style="FONT-FAMILY: verdana; BACKGROUND-COLOR: rgb(255,255,255)" alink="#008000"
|
||||
link="#008000" vlink="#008000">
|
||||
<h2 style="COLOR: rgb(0,128,0)">Pravets Clones</h2>
|
||||
<hr size="4">
|
||||
<p style="FONT-WEIGHT: bold">Background:</p>
|
||||
<p>
|
||||
In the 80's Bulgaria was the biggest computer manufacturer in this part of the world.
|
||||
Also - first in the world
|
||||
- for the proportion of manufactured computers per person
|
||||
in the country.<br>
|
||||
</p>
|
||||
<p style="FONT-WEIGHT: bold">History:</p>
|
||||
<p>
|
||||
IMKO 1 and IMKO 2 were the first models (circa 1980 and 1982); in 1983 IMKO 2 was renamed to Pravetz 82,
|
||||
because Todor Zhivkov (Bulgarian government and communist party leader at this time) was from Pravetz -
|
||||
a small town, near to Bulgaria's capital city, Sofia.<br>
|
||||
<br>
|
||||
IMKO 1,2 and Pravetz 82 were almost identical clones of the Apple ][. Then the Pravetz factory built the Pravetz 8M (which was unique at the time)
|
||||
because of its 2 onboard CPU's - 6502 & Z80 (used as a built-in CP/M module). It also had 64 KB of RAM onboard
|
||||
(16 KB as built-in RAM expansion in slot 0).<br>
|
||||
<br>
|
||||
In the following years they also built: Pravetz 8E, 8A, 8C and 8S - clones of Apple //e.<br>
|
||||
. 8E didn't have the Cyrillic font, unlike all other models, it had lowercase and
|
||||
capital Latin letters, like original Apple's.<br>
|
||||
. 8A have 2 additional basic commands, 8 bit code-pages, mini-assembler, allowed
|
||||
the use of hex codes in BASIC and some additional subroutines
|
||||
in the built-in ROM. Unfortunately, some important entry points of the monitor (ROM) program were changed, so it was not 100%
|
||||
compatible with older Apple (and Pravetz) models. This is easily corrected by changing some code (usually JMP in binary
|
||||
programs or CALL, POKE, PEEK
|
||||
in BASIC programs), but not very simple, especially for ordinary users.<br>
|
||||
. 8C was a stripped down version of 8A (so like the Apple //c) but its size wasn't smaller, like //c. It was without an auxiliary slot
|
||||
of 8A (Apple //e), instead it had 64 KB RAM built-in to its address space. It also had a CM630 CPU (6502 analogue), which had
|
||||
some bugs when used with the CP/M module. 8C also had a built-in RGB module for color monitor (slot 7) and of course the improved
|
||||
80 column card of the Apple //e, like 8E and 8A.<br>
|
||||
. 8S was a further improved version of 8C with a possibility to change DRAM chips to 1 MB of memory.
|
||||
(It was possible to do this with Pravetz 8C and the expansion card of 8A: in order to have 1060 MB of memory.)<br>
|
||||
<br>
|
||||
There were also other Pravetz models:<br>
|
||||
. 8D was a version of the Oric/Atmos - "D" means "Dom" - "Home" in Bulgarian.<br>
|
||||
Other models were 16 bit - IBM PC XT and AT clones:<br>
|
||||
. Pravetz 16, Pravetz 16, Pravetz 16A, Pravetz 16H, Pravetz 16T (with Nec V20 CPU)<br>
|
||||
. Pravetz 286 (286 CPU), Pravetz 386 (with 386 CPU) and Pravetz 486 - experimental, only a few were manufactured.</p>
|
||||
<br>
|
||||
Thanks to Stanislav Georgiev for this information.
|
||||
</body>
|
||||
</html>
|
|
@ -1,78 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252"><title>Advanced Settings</title></head>
|
||||
<body style="background-color: rgb(255, 255, 255); font-family: verdana;" alink="#008000" link="#008000" vlink="#008000">
|
||||
<h2 style="color: rgb(0, 128, 0);">Advanced Settings</h2>
|
||||
<hr size="4"><img style="width: 354px; height: 460px; float: right;" src="img/advanced.png" alt="Advanced settings" hspace="5" vspace="5">
|
||||
<p><strong>Save State File Name:</strong><br>
|
||||
This is the file name to use for save-state files. The default
|
||||
directory is the same as where your AppleWin.exe program is stored.</p>
|
||||
<p><strong>Save State on Exit:</strong><br>
|
||||
Checking this box will automatically save the current state of the
|
||||
emulator upon exit. The state will be saved to the file
|
||||
specified above (SaveState.yaml by default).</p>
|
||||
<p><strong>Save State:</strong><br>
|
||||
Press this button to save the current state of the emulator to the file
|
||||
specified. You can also save the system state during
|
||||
emulation by pressing the F11 key.</p>
|
||||
<p><strong>Load State:</strong><br>
|
||||
Press this button to load the specified state file into
|
||||
the emulator. You can also load the system state during
|
||||
emulation by pressing the F12 key.</p>
|
||||
<p><strong>Clone:</strong><br>
|
||||
If you have specified Computer as 'Clone' on the main Configuration
|
||||
page, then this drop-down menu can be used to specify the clone type.<br>
|
||||
NB. Pravets 82, 8M and 8A are Bulgarian Apple II clones;
|
||||
TK3000 is a Brazilian //e clone;
|
||||
Base 64A is a Taiwanese Apple II clone.<br>
|
||||
<ul>
|
||||
<li>Pravets 8A: Use F10 for the Pravets Caps Lock (and the PC's Caps Lock key controls Cyrillic/Latin lock).
|
||||
<li>TK3000: Use Scroll Lock for the 'mode' key. Use to switch between standard Apple II and accented characters.
|
||||
<li>Base 64A: Use Delete for the 'F2' key (eg. press F2, release F2 then press a key to auto-type a BASIC keyword).
|
||||
</ul>
|
||||
</p>
|
||||
<p><strong>Printer settings </strong>(Printer is emulated in slot 1)
|
||||
</p>
|
||||
<p style="margin-left: 40px;"><strong>Printer dump filename:<br>
|
||||
</strong>
|
||||
Data sent to the printer is stored in a text file. Use
|
||||
this setting to select its location.<br>
|
||||
</p>
|
||||
<p style="margin-left: 40px;"><strong>Dump to printer:<br>
|
||||
</strong><span style="font-weight: bold; font-style: italic;">Use
|
||||
with caution!</span> Enables dumping to a real printer. If
|
||||
disabled, the printout is stored only in printer.txt file in the AppleWin folder.
|
||||
It's recommended to use a printer compatible with the printer selected in the Apple II applications.
|
||||
With modern printers trying to print images will result in printing tens of
|
||||
pages of nonsense. Requires command line switch -use-real-printer.<br>
|
||||
</p>
|
||||
<p style="margin-left: 40px;"><strong>Encoding conversion for clones:<br>
|
||||
</strong>Characters are encoded from the character set used in
|
||||
the real hardware to ASCII. For Pravets 8 this converts MIK to ASCII.
|
||||
Enabling this could cause problems when printing images.
|
||||
</p>
|
||||
<p style="margin-left: 40px;"><strong>Filter unprintable characters:<br>
|
||||
</strong>Some characters represent commands for the printer and
|
||||
shall not be printed. When saving them to the printer dump file they
|
||||
may appear as some strange symbols. (You will want to disable filtering
|
||||
when dumping to a real printer.)
|
||||
</p>
|
||||
<p style="margin-left: 40px;"><strong>Append to print-file:<br>
|
||||
</strong>When disabled, the previous print file is replaced (unless it has a
|
||||
different name) by the newly created print file. Otherwise the newly
|
||||
printed data is added to the existing print file. (You will want to
|
||||
disable appending when dumping to a real printer.)
|
||||
</p>
|
||||
<p style="margin-left: 40px;"><strong>Terminate printing after idle:<br>
|
||||
</strong>When printing is started, a printer file is created and it is
|
||||
closed either after the specified time expires, or when
|
||||
the emulator is reset. This setting is emulation speed dependent.
|
||||
</p>
|
||||
<p><strong>The Freeze's non-autostart F8 rom:</strong><br>
|
||||
If you have specified Computer as 'Apple ][' or 'Apple ][+' on the main
|
||||
Configuration page, then you will be able to enable this setting.
|
||||
The Freeze F8 rom is a hacker's rom that replaces the normal 2K rom at
|
||||
$F800. <a href="cfg-advanced-freeze-rom.html">Here's the
|
||||
original release note</a>
|
||||
</p>
|
||||
</body></html>
|
|
@ -1,109 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>Configuration Settings</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body style="FONT-FAMILY: verdana; BACKGROUND-COLOR: rgb(255,255,255)" alink="#008000"
|
||||
link="#008000" vlink="#008000">
|
||||
<h2 style="COLOR: rgb(0,128,0)">Configuration Settings</h2>
|
||||
<hr size="4">
|
||||
<img style="FLOAT: right; WIDTH: 354px; HEIGHT: 497px" src="img/config.png" alt="Configuration settings"
|
||||
hspace="5" vspace="5">
|
||||
|
||||
<strong>Model:</strong><br>
|
||||
This describes the mode of emulation. You have the option of emulating
|
||||
the predecessors of the Apple //e: the Apple ][ and Apple ][+. Besides running
|
||||
with a different Apple system ROM, some differences are discussed below.<br>
|
||||
<ul>
|
||||
<li>Apple ][ : 48K non-autostarting, Integer BASIC, no lower-case, no 80-column, 6502 CPU
|
||||
<li>Apple ][+ : 64K autostarting, Applesoft BASIC version of the Apple ][
|
||||
<li>Apple ][ J-Plus : 64K autostarting, Applesoft BASIC, Japanese version of the Apple ][+
|
||||
<li>Apple //e : 128K machine, lower-case, 80-column, 6502 CPU</li>
|
||||
<li>Enhanced Apple //e : 128K machine, lower-case, 80-column, 65C02 CPU</li>
|
||||
<li>Clone (specific model selectable from Advanced page)</li>
|
||||
</ul>
|
||||
|
||||
<strong>Confirm reboot:</strong><br>
|
||||
Show "Confirm reboot" message box when F2 is pressed.<br>
|
||||
<br>
|
||||
|
||||
<strong>Video:</strong><br>
|
||||
AppleWin can display Apple video in a variety of modes. The display can also be
|
||||
run in a standard window or full-screen. This option describes the type of
|
||||
video emulation to be used for the emulator. The differences are
|
||||
discussed below.<br>
|
||||
<ul>
|
||||
<li><strong>Monochrome (custom) :</strong> This mode emulates a monochrome monitor.<br>
|
||||
You can choose your monochrome color from the <em>Monochrome Color</em> button described below.
|
||||
<li><strong>Color (Composite Idealized) :</strong> This mode emulates an <i>idealized</i> composite color monitor.
|
||||
<br>Text is sharp like a white monochrome monitor. Color graphics has only 16 colors (with no blurring or ringing). This is the only mode that supports vertical blend.
|
||||
<li><strong>Color (RGB Card/Monitor) :</strong> This mode emulates a standard RGB card and monitor.
|
||||
<br>Text is sharp like a white monochrome monitor. Color graphics has only 16 colors (with no blurring or ringing). Double hi-res is 140x192 chunky pixels (or software selectable as: B&W or mixed Color/B&W). From the <a href="CommandLine.html">command line</a> you can specify the RGB card, the default is the Extended 80-Column Text/AppleColor Adaptor Card. Some double hi-res titles may have compatibility issues. See <a href="Troubleshooting.html">troubleshooting</a>.
|
||||
<li><strong>Color (Composite Monitor) :</strong> This mode emulates a standard NTSC (or PAL) color monitor.
|
||||
<br>Text is sharp, but contains color artifacts. Color graphics has visible alternating color and black pixels.
|
||||
<li><strong>Color TV :</strong> This mode emulates an NTSC color TV.
|
||||
<br>All text and color graphics modes are blurry and have visible ringing.
|
||||
<li><strong>B&W TV :</strong> This mode emulates an NTSC black and white TV.
|
||||
<li><strong>Monochrome (Amber/Green/White) :</strong> Monochrome with specified color.
|
||||
</ul>
|
||||
|
||||
<strong>Monochrome Color:</strong><br>
|
||||
This is the color to use when you choose a monochrome video mode.<br>
|
||||
<br>
|
||||
|
||||
<strong>50% Scan lines:</strong><br>
|
||||
Only draw alternate scanline (for better monitor authenticity).<br>
|
||||
<br>
|
||||
|
||||
<strong>Vertical blend:</strong><br>
|
||||
When video mode is 'Color (Composite Idealized)' then vertically blend the hi-res screen.<br>
|
||||
<br>
|
||||
|
||||
<strong>Full-Screen: Show drive/keyboard status:</strong><br>
|
||||
When in full-screen mode, show floppy (activity and track) and harddisk status (activity); keyboard caps-lock status and if emulation is paused.<br>
|
||||
<br>
|
||||
|
||||
<strong>VidHD in slot 3</strong><br>
|
||||
Insert a VidHD card into slot 3 (which can co-exist with an 80-column card in the Apple //e's AUX slot).<br>
|
||||
Allows all Apple II models to support the IIgs' Super Hi-Res (SHR) video modes and is supported by eg. <a href="https://archive.org/details/TotalReplay">Total Replay</a>.<br>
|
||||
<br>
|
||||
|
||||
<hr>
|
||||
|
||||
<strong>Serial Port:</strong><br>
|
||||
This option will remap the emulated Apple's serial port to your PC's serial port (or TCP port 1977).<br>
|
||||
See <a href="card-ssc.html">Super Serial Card</a> for more details.<br>
|
||||
<br>
|
||||
|
||||
<strong>Ethernet Settings...:</strong><br>
|
||||
This allows to choose which network interface card (NIC) you want to
|
||||
use with the Uthernet or Uthernet II card.<br>
|
||||
<br>
|
||||
|
||||
<strong>Emulation Speed Control:</strong><br>
|
||||
This option let's you control the processor speed of the emulated system. You
|
||||
may choose to use an authentic speed (matching the speed of the original
|
||||
processor from the system) or you can underclock or overclock the emulated
|
||||
processor speed from half-speed to as fast as your PC can emulate.<br>
|
||||
<br>
|
||||
|
||||
<strong>50Hz video:</strong><br>
|
||||
When checked, this option will run the emulated machine with a 50Hz(PAL) video refresh rate.
|
||||
The default is unchecked, for 60Hz(NTSC).<br>
|
||||
<br>
|
||||
|
||||
<strong>Benchmark Emulator:</strong><br>
|
||||
This will run a benchmark test that will show how fast your PC can emulate an
|
||||
Apple //e system with this emulator. In order to run the benchmark, the
|
||||
emulated machine must be reset and you will lose any unsaved work. You will be
|
||||
prompted before you continue this action. The results given are:<br>
|
||||
<ul>
|
||||
<li> Pure Video FPS
|
||||
<li> Pure CPU MHz (video update)
|
||||
<li> Pure CPU MHz (full-speed)
|
||||
<li> Expected average video game performance (in FPS)
|
||||
</ul>
|
||||
</li>
|
||||
</body>
|
||||
</html>
|
|
@ -1,62 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
<title>Disk Settings</title>
|
||||
</head>
|
||||
<body style="background-color: rgb(255, 255, 255); font-family: verdana;" alink="#008000" link="#008000" vlink="#008000">
|
||||
<h2 style="color: rgb(0, 128, 0);">Disk Settings</h2>
|
||||
<hr size="4"><img style="width: 354px; height: 460px; float: right;" src="img/disk.png" alt="Disk settings" hspace="5" vspace="5">
|
||||
|
||||
<h3>Floppy Controller Settings:</h3>
|
||||
<p><strong>Enhanced disk access speed:</strong><br>
|
||||
Here you can choose the speed at which the system can access
|
||||
an emulated floppy disk drive.
|
||||
By default, you would want "Enhanced Speed" so that data can
|
||||
be accessed as fast as possible. However, it is also possible that
|
||||
certain programs might depend on the "Authentic Speed" to function
|
||||
properly. This is the speed at which the real hardware
|
||||
would access data from your drives.
|
||||
</p>
|
||||
|
||||
<p><strong>Disk 1/2 drop-down menus (slot 6):</strong><br>
|
||||
These menus allow you to select floppy disk images to 'insert' into the
|
||||
emulated floppy drives 1 and 2. This can also be done during emulation by <a href="toolbar.html">using the toolbar</a> or using the F3/F4 keys. Diskettes can be swapped by pressing F5 during emulation. You can also eject images from this menu.
|
||||
</p>
|
||||
|
||||
<p><strong>Enable Disk II controller in slot 5:</strong><br>
|
||||
A floppy controller card can be plugged into slot 5 by checking this box.
|
||||
</p>
|
||||
|
||||
<p><strong>Disk 1/2 drop-down menus (slot 5):</strong><br>
|
||||
You can select floppy disk images to 'insert' into the
|
||||
emulated floppy drives 1 and 2.
|
||||
</p>
|
||||
<br>
|
||||
|
||||
|
||||
<h3>Hard disk Controller Settings:</h3>
|
||||
<p><strong>Enable hard disk controller in slot 7:</strong><br>
|
||||
A hard disk controller (or interface) card can be plugged into slot 7 by checking this box.
|
||||
See <a href="ddi-harddisk.html">Hard disk Images</a> for more details.
|
||||
</p>
|
||||
|
||||
<p><strong>Swap:</strong><br>
|
||||
Swap the hard disk images.<br>
|
||||
WARNING! If done during image access this could result in undefined behavior (eg. Apple II program crash) or data corruption on the image.
|
||||
</p>
|
||||
|
||||
<p><strong>HDD 1/2 drop-down menus:</strong><br>
|
||||
These menus allow you to select hard disk images (eg. .hdv files) to
|
||||
connect to the emulated hard disk controller card. You can also unplug images from this menu.
|
||||
</p>
|
||||
<br>
|
||||
|
||||
|
||||
<p><strong>CiderPress path:</strong><br>
|
||||
Use this to specify where CiderPress is installed.<br>
|
||||
The right mouse button context menu on either of the drive icons allows you to open CiderPress with the image in the drive.
|
||||
</p>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -1,98 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
<title>Input Settings</title>
|
||||
|
||||
|
||||
</head>
|
||||
|
||||
|
||||
<body style="background-color: rgb(255, 255, 255); font-family: verdana;" alink="#008000" link="#008000" vlink="#008000">
|
||||
|
||||
<h2 style="color: rgb(0, 128, 0);">Input Settings</h2>
|
||||
|
||||
<hr size="4"><img style="width: 354px; height: 497px; float: right;" src="img/input.png" alt="Input settings" hspace="5" vspace="5">
|
||||
<strong>Joystick Control:</strong><br>
|
||||
|
||||
These options allow you to configure up to two joysticks attached to
|
||||
the emulated Apple //e system.<br>
|
||||
|
||||
<ul>
|
||||
<li>Joystick 1/2: Choose the emulation method for joysticks 1 and 2.</li>
|
||||
<li>X/Y-trim: These controls add a trim value to the
|
||||
joystick X/Y offsets when the joystick is centered. Normally central
|
||||
position is X=127, Y=127 so this adds the trim value for PC joysticks
|
||||
& keyboard (centering). If you are using an analog PC joystick,
|
||||
then you should leave these values at 0.</li>
|
||||
<li>Allow cursor keys to be read from keyboard: Applicable only in 'Keyboard (cursors)' mode.</li>
|
||||
<li>NB.</li>
|
||||
<ul>
|
||||
<li>Be aware that 'cursor-up' = CTRL+K, and 'cursor-down' = CTRL+J.</li>
|
||||
<li>When cursor keys are used for joystick emulation <strong>and</strong> are allowed to be read from the keyboard, then some games won't work correctly (eg. Lode Runner).</li>
|
||||
<li>When cursor keys are blocked from being read from the keyboard, then simple command-line cursor editing in AppleSoft won't work.</li>
|
||||
</ul>
|
||||
<li>Swap 0/1: Swap buttons 0 and 1 for all input devices.</li>
|
||||
<li>Auto-fire (all 3 buttons): For each button pressed, the button's state will be toggled when read.</li>
|
||||
<li>Keyboard auto-centering: When keys used for joystick emulation are released then the joystick will return to the central position.</li>
|
||||
</ul>
|
||||
|
||||
<strong>4Play Joystick card:</strong><br>
|
||||
On real hardware this card allows up to 4 Atari 9-pin joysticks to be connected.<br>
|
||||
Under emulation, the first 2 Windows-detected controllers will be used, and then for joysticks 3 and 4, use keys: ESDF+ZX and IJKL+NM. Note these keys will also be readable from the keyboard.<br>
|
||||
<li>The card can be configured in slots 3, 4 or 5.
|
||||
<li>Since it only uses the slot's DEVICE SELECT space ($C0Bx for slot 3) then it can co-exist with an 80-column card in the Apple //e's AUX slot. NB. For a real PAL Apple //e, then a slot riser card is required for it to fit.<br>
|
||||
See Lukazi's <a href="https://lukazi.blogspot.com/2016/04/apple-ii-4play-joystick-card.html">4Play card</a> and <a href="https://lukazi.blogspot.com/2017/08/apple-ii-4play-joystick-card-software.html">4Play card software</a> blogs for more information.<br>
|
||||
<br>
|
||||
|
||||
<strong>SNES MAX card:</strong><br>
|
||||
On real hardware this card allows up to 2 SNES controllers to be connected and all 12 buttons can be read.<br>
|
||||
Under emulation, the first 2 Windows-detected controllers will be used, ideally with 12 (or more) buttons eg. Logitech F310, PlayStation Dualshock 4, DualSense. Note that for some controllers (eg. 8BitDo NES30 Pro) the buttons need remapping, so use the command line switches -snes-max-alt-joy1 or -snes-max-alt-joy2 to remap.<br>
|
||||
<li>The card can be configured in slots 3, 4 or 5.
|
||||
<li>Since it only uses the slot's DEVICE SELECT space ($C0Bx for slot 3) then it can co-exist with an 80-column card in the Apple //e's AUX slot. NB. This card is small, so no slot riser card is required.<br>
|
||||
See Lukazi's <a href="https://lukazi.blogspot.com/2021/06/game-controller-snes-max-snes.html">SNES MAX</a> blog for more information.<br>
|
||||
<br>
|
||||
<br>
|
||||
|
||||
<hr>
|
||||
|
||||
<strong>Scroll Lock acts as toggle for full-speed CPU:</strong><br>
|
||||
<ul>
|
||||
<li>When checked, you can permanently enable full-speed CPU when Scroll Lock is on.</li>
|
||||
<li>When unchecked, only when Scroll Lock is depressed will you get full-speed CPU.</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<strong>Mouse interface in slot 4:</strong><br>
|
||||
<ul>
|
||||
<li>Disables joystick emulation with mouse.</li>
|
||||
<li>Disables Mockingboard/Phasor in slot 4.</li>
|
||||
<li>Show cross-hairs in window's frame:</li>
|
||||
<ul>
|
||||
<li>Configure whether you want cross-hairs or not</li>
|
||||
</ul>
|
||||
<li>Restrict mouse to Apple window:</li>
|
||||
<ul>
|
||||
<li>Restricting is useful for paint applications</li>
|
||||
<li>When unrestricted, the emulated mouse is fully integrated with the Window desktop:
|
||||
moving in and out of the AppleWin window will switch between Windows' and the Apple's mouse cursor.</li>
|
||||
<li>NB. Even when unrestricted, you won't be able to move the mouse outside the Apple window for GEOS. This is not a bug.</li>
|
||||
<li>Tip: Use Ctrl+Left Mouse Button to show the Windows mouse cursor (eg. essential for GEOS).</li>
|
||||
</ul>
|
||||
</ul>
|
||||
|
||||
|
||||
<strong>Microsoft CP/M SoftCard interface in slot 4 or 5:</strong><br>
|
||||
<ul>
|
||||
<li>Emulates a CP/M card, complete with full Z80 emulation.</li>
|
||||
<li>Available when Mockingboard or Phasor isn't in slot 4 or 5.</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<strong>Paste from clipboard:</strong><br>
|
||||
Pressing this button will allow you to paste text from the
|
||||
Windows' clipboard into the emulated Apple //e.<br>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -1,46 +0,0 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
<title>Sound Settings</title>
|
||||
|
||||
|
||||
</head>
|
||||
|
||||
|
||||
<body style="background-color: rgb(255, 255, 255); font-family: verdana;" alink="#008000" link="#008000" vlink="#008000">
|
||||
|
||||
<h2 style="color: rgb(0, 128, 0);">Sound Settings</h2>
|
||||
|
||||
<hr size="4"><img style="width: 354px; height: 460px; float: right;" src="img/sound.png" alt="Sound settings" hspace="5" vspace="5"><strong>Sound:</strong><br>
|
||||
|
||||
This option allows you to choose how sound is output for the
|
||||
system. Your choices are:<br>
|
||||
|
||||
<ul>
|
||||
<li>Disabled</li>
|
||||
<li>Sound Card (recommended)</li>
|
||||
</ul>
|
||||
|
||||
<br>
|
||||
<strong>Volume Control:</strong><br>
|
||||
|
||||
These slider controls allow you to control the sound
|
||||
levels of the built-in Apple //e speaker and/or an optional
|
||||
Mockingboard or Phasor speaker.<br>
|
||||
|
||||
<br>
|
||||
<strong>Mockingboard/Phasor Control:</strong><br>
|
||||
|
||||
These options allow you to either enable a pair of Mockingboard sound
|
||||
cards in slots 4 and 5, or enable a Phasor sound card in slot 4, or simply disable any
|
||||
external sound card for the emulated system.<br>
|
||||
|
||||
<br>
|
||||
<strong>SAM:</strong><br>
|
||||
|
||||
SAM (Software Automatic Mouth) is an 8-bit DAC card than can be enabled in slot 5.
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -1,53 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>Clock</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body style="FONT-FAMILY: verdana; BACKGROUND-COLOR: rgb(255,255,255)" alink="#008000"
|
||||
link="#008000" vlink="#008000">
|
||||
<h2 style="COLOR: rgb(0,128,0)">
|
||||
Clock</h2>
|
||||
<hr size="4">
|
||||
<h3>Clock:</h3>
|
||||
<p>AppleWin emulates a No-Slot clock (aka NSC).</p>
|
||||
<p>This is a chip (a Dallas SmartWatch DS1216) that sits under one of the 28-pin (or 24-pin) ROM chips in the Apple II.<br>
|
||||
No hardware configuration is required: this chip is always present (unless -no-nsc is used), but won't interfere with system operation when not in use.
|
||||
</p>
|
||||
<p>It requires a software driver to be installed (for DOS and ProDOS). This driver then emulates the Thunderclock card.</p>
|
||||
<br>
|
||||
|
||||
<p>For the <strong>Apple //e</strong>, here's a summary of NSC/ROM chip locations and which drivers work:</p>
|
||||
<ul>
|
||||
<li>"CD" ROM socket: $C000-DFFF (internal) ROM space - all drivers work</li>
|
||||
<li>"EF" ROM socket: $E000-FFFF ROM space - never seen any drivers use this space</li>
|
||||
<li>"CF" ROM socket: $C000-FFFF (internal) ROM space - all drivers work</li>
|
||||
<li>Slot ROM socket: $Cs00-CsFF (slot) ROM space - NS.CLOCK.SYSTEM works</li>
|
||||
</ul>
|
||||
|
||||
<p>Here are the drivers and ROM pages they check:</p>
|
||||
<ul>
|
||||
<li>ProDOS "SWU.SYSTEM" - internal C3</li>
|
||||
<li>ProDOS "NS.CLOCK.SYSTEM" - internal C3 C8 / external C1-C7</li>
|
||||
<li>GEOS "NoSlot Clock" - internal C8</li>
|
||||
<li>ProDOS-8 v2.5.0 "NoSlotClk.IIe" - internal C3 (currently 65C02 only)</li>
|
||||
</ul>
|
||||
<br>
|
||||
|
||||
<p>For the <strong>Apple II/II+</strong>, here's a summary of NSC/ROM chip locations and driver information:</p>
|
||||
<ul>
|
||||
<li>"F8" ROM socket: $F800-FFFF (internal) ROM space - ProDOS-8 v2.5.0a8 (not currently working)</li>
|
||||
</ul>
|
||||
|
||||
<p>Here are the drivers and ROM pages they check:</p>
|
||||
<ul>
|
||||
<li>ProDOS-8 v2.5.0 "NOSLOTCLK.II" - internal F8</li>
|
||||
</ul>
|
||||
<br>
|
||||
|
||||
<p><strong>NOTE: </strong>For ProDOS, the load order of drivers is important:</p>
|
||||
<p>Some .SYSTEM drivers will <strong>not</strong> chain-load the next driver.<br>
|
||||
NS.CLOCK.SYSTEM does, so ensure this is the first one ProDOS finds,
|
||||
whereas ZIP.SYSTEM doesn't so put this at the end of the chain.</p>
|
||||
</body>
|
||||
</html>
|
|
@ -1,20 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
<title>AppleWin Configuration</title>
|
||||
</head>
|
||||
|
||||
<body style="background-color: rgb(255, 255, 255); font-family: verdana;" alink="#008000" link="#008000" vlink="#008000">
|
||||
<h2 style="color: rgb(0, 128, 0);">AppleWin Configuration</h2>
|
||||
<hr size="4">
|
||||
<p>Select one of the following topics: </p>
|
||||
<ul>
|
||||
<li><a href="cfg-config.html">Configuration Settings</a></li>
|
||||
<li><a href="cfg-input.html">Input Settings</a></li>
|
||||
<li><a href="cfg-sound.html">Sound Settings</a></li>
|
||||
<li><a href="cfg-disk.html">Disk Settings</a></li>
|
||||
<li><a href="cfg-advanced.html">Advanced Settings</a></li>
|
||||
</ul>
|
||||
</body>
|
||||
</html>
|
|
@ -1,20 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>Contacting the Developers</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body style="FONT-FAMILY: verdana; BACKGROUND-COLOR: rgb(255,255,255)" vLink="#008000"
|
||||
aLink="#008000" link="#008000">
|
||||
<h2><font color="#008000">Contacting the Developers</font></h2>
|
||||
<P>
|
||||
<hr SIZE="4">
|
||||
<P></P>
|
||||
<P><br>
|
||||
To contact the project administrators, post a question to the GitHub link below.<br>
|
||||
<br>
|
||||
<P>Bug reports / feature requests should be submitted here:<br>
|
||||
<A href="https://github.com/AppleWin/AppleWin/issues/new">https://github.com/AppleWin/AppleWin/issues/new</A>
|
||||
</P>
|
||||
</body>
|
||||
</html>
|
|
@ -1,127 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>AppleWin Debugger Tutorial</title>
|
||||
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body style="DIRECTION: ltr" lang="en-US">
|
||||
<h1>Bookmarks</h1>
|
||||
<p>Bookmarks allow you to "tag" an address and consequently jump back to them.<br>
|
||||
They appear as a number with a circle around them between where address and opcodes are listed (where the : separator is).
|
||||
</p>
|
||||
|
||||
<img src="img/debugger-bookmarks-annotated.png" hspace="5" vspace="5">
|
||||
|
||||
<br>
|
||||
<p><font size="4"><b>Notes</b>:</font></p>
|
||||
<ul>
|
||||
<li>Set a bookmark at the current disassembly cursor, use Ctrl-Shift-#, ie:
|
||||
<ul>
|
||||
<li>Ctrl-Shift-0 set bookmark 0 (by default Windows blocks this key sequence - see <a href="Troubleshooting.html">Troubleshooting</a> to resolve this)
|
||||
<li>Ctrl-Shift-1 set bookmark 1
|
||||
<li>Ctrl-Shift-2 set bookmark 2
|
||||
<li>...
|
||||
<li>Ctrl-Shift-9 set bookmark 9
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<br>
|
||||
|
||||
<li>To jump to an existing bookmark, if it exists, press Ctrl-#, ie:
|
||||
<ul>
|
||||
<li>Ctrl-0 to jump to bookmark 0
|
||||
<li>Ctrl-1 to jump to bookmark 1
|
||||
<li>Ctrl-2 to jump to bookmark 2
|
||||
<li>...
|
||||
<li>Ctrl-9 to jump to bookmark 9
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<br>
|
||||
|
||||
<li>NB.
|
||||
<ul>
|
||||
<li>Bookmarks can appear in any order that you set - not just contiguous.
|
||||
<li>An address can only have ONE bookmark assigned to it. If you try setting a new bookmark over an existing one, the old one will become free for use.
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<p>
|
||||
</p>
|
||||
|
||||
<p><font size="4"><b>Commands to manipulate bookmarks:</b></font></p>
|
||||
|
||||
<table border="1" cellpadding="2" cellspacing="0" width="75%">
|
||||
<COLGROUP>
|
||||
<col width="64">
|
||||
<col width="192">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="25%">
|
||||
<p><font color="#ffffff"><b>Command</b></font></p>
|
||||
</td>
|
||||
<td>
|
||||
<p><font color="#ffffff"><b>Description</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="25%">
|
||||
<p>help bookmarks</p>
|
||||
</td>
|
||||
<td>
|
||||
<p>Lists all bookmark related commands</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="25%">
|
||||
<p>help bma</p>
|
||||
</td>
|
||||
<td>
|
||||
<p>Lists specific help about the bma command</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="25%">
|
||||
<p>bma <address|label></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>Add a bookmark at an address or label</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="25%">
|
||||
<p>bmc #</p>
|
||||
</td>
|
||||
<td>
|
||||
<p>Clear a specific bookmarks, for example 'bmc 1' clears bookmark 1</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="25%">
|
||||
<p>bmc *</p>
|
||||
</td>
|
||||
<td>
|
||||
<p>Clears all bookmarks</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="25%">
|
||||
<p>bml</p>
|
||||
</td>
|
||||
<td>
|
||||
<p>Lists all boommarks</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="25%">
|
||||
<p>bmsave</p>
|
||||
</td>
|
||||
<td>
|
||||
<p>Not implemented yet</p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
|
@ -1,446 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>AppleWin Debugger Tutorial</title>
|
||||
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body style="DIRECTION: ltr" lang="en-US">
|
||||
<h2><a name="Breakpoints"></a>Breakpoints</h2>
|
||||
<p>You now have a variety of options when specifying a breakpoint.
|
||||
Breakpoints can also be disabled, and later re-enabled. This lets ones
|
||||
set a bunch of breakpoints, and quickly re-activate them without having to
|
||||
re-enter the breakpoint logic.</p>
|
||||
<p><br>
|
||||
<br>
|
||||
</p>
|
||||
<table border="0" cellpadding="2" cellspacing="0" width="90%">
|
||||
<COLGROUP>
|
||||
<col width="64">
|
||||
<col width="192">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#ffffff"><b>Command</b></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p style="FONT-STYLE: normal"><font color="#ffffff"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BPA
|
||||
r [op] value</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Adds
|
||||
(conditional) Breakpoint.<br>
|
||||
|
||||
Default operator is equal ‘=’<br>
|
||||
|
||||
(In a future version, will dispatch to BPX, BPR, BPP, or BPIO.)</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BPX<br>
|
||||
|
||||
BPX expression<br>
|
||||
|
||||
BPX address[,len]<br>
|
||||
|
||||
BPX [op] symbol</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Add Breakpoint trigger to stop executing when the PC is within the range of the Address, Symbol, or Expression. i.e. Range is: [addr,addr+len)<br>
|
||||
Default length is 1.<br>
|
||||
Default comparison operator is equal ‘=’</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BP</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Currently an Alias for BPX.<br>
|
||||
(In a future version, will also support Loading and Saving of breakpoints.)</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BPM address[,len]</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Add Breakpoint trigger when memory is accessed by 6502.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BPMR address[,len]</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Add Breakpoint trigger when memory is read by 6502.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BPMW address[,len]</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Add Breakpoint trigger when memory is written by 6502.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BPR reg [op] value</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Add Breakpoint trigger when Register’s ‘reg’ value is compared to the Value.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BPD</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Disable Breakpoint (grayed out).</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BPE</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Enable Breakpoint (colored red).</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BPC #</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Clear specified Breakpoint.<br>
|
||||
Note: The asterisk ‘*’ may be used to clear all breakpoints.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BPL</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">List Breakpoints.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BPIO</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">(In a future version, will add Breakpoint trigger on memory read or write.)</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BPP</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">(In a future version, will add Breakpoint trigger on specific flag cleared or set.)</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BRK [0|1|2|3|all] [on|off]</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Break on BRK or Invalid 1-3 byte opcodes</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BRKOP [opcode]</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Break on Opcode</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BRKINT [on|off]</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Break on Interrupt</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><br>
|
||||
<br>
|
||||
</p>
|
||||
<p>The general format for the conditional breakpoint is:</p>
|
||||
<ul>
|
||||
<li>
|
||||
<p style="MARGIN-BOTTOM: 0in"><i>BPA register [operator] value.</i></p>
|
||||
</li>
|
||||
</ul>
|
||||
<p>You can use the following comparison operators:</p>
|
||||
<table border="1" cellpadding="2" cellspacing="0" width="75%">
|
||||
<COLGROUP>
|
||||
<col width="26">
|
||||
<col width="64">
|
||||
<col width="166">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="10%">
|
||||
<p><font color="#ffffff"><b>Op</b></font></p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p><font color="#ffffff"><b>Name</b></font></p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><font color="#ffffff"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>=</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Equal</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Break when register is equal to value.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>!</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Not Equal</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Break when register is not equal to value.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p><</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Less Than</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Break when register is less than value.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>></p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Greater Than</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Break when register is greater than value.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><br>
|
||||
<br>
|
||||
</p>
|
||||
<p>Breaking on any of the 6502 registers is fully supported:</p>
|
||||
<table border="1" cellpadding="2" cellspacing="0" width="75%">
|
||||
<COLGROUP>
|
||||
<col width="26">
|
||||
<col width="64">
|
||||
<col width="166">
|
||||
<thead>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="10%">
|
||||
<p><font color="#ffffff"><b>Reg</b></font></p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p><font color="#ffffff"><b>Name</b></font></p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><font color="#ffffff"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>A</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Accumulator</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Break when Accumulator is triggered.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>X</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Register X</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Break when Index X is triggered.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>Y</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Register Y</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Break when Index Y is triggered.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>PC</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Program Counter</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Break when PC is triggered.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>S</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Stack Pointer</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Break when Stack Pointer is triggered.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>P</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Processor Status (flags)</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Break when flags are triggered.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<br>
|
||||
<h2><font size="4">Notes:</font></h2>
|
||||
<ul>
|
||||
<li>
|
||||
<p><i>BPP, Breaking on a specific flag (either set, or cleared) is forth-coming in a
|
||||
future version.</i></p>
|
||||
</li>
|
||||
</ul>
|
||||
<br>
|
||||
<p><font size="4"><b>Examples</b>:</font></p>
|
||||
<table bgcolor="#000000" border="0" cellpadding="2" cellspacing="0" width="75%">
|
||||
<COLGROUP>
|
||||
<col width="64">
|
||||
<col width="192">
|
||||
<tbody>
|
||||
<tr bgcolor="#00b8ff">
|
||||
<td bgcolor="#30c0ff" width="25%">
|
||||
<p><font color="#000000"><b>Input</b></font></p>
|
||||
</td>
|
||||
<td bgcolor="#30c0ff" width="75%">
|
||||
<p><font color="#000000"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b>BPX < F000</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><font color="#ffffff"><i>Add Breakpoint when PC < $<b><font color="#ffff00">FA62</font></b>.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b>BPX PC < D000</b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Add Breakpoint when PC < $ <b><font color="#ffff00">D000</font>.</b></i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BPR A 0</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Add Breakpoint when Accumulator is zero.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BPR A ! 0</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Add Breakpoint when Accumulator is <b>not</b> zero.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BPR S < 1FF</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Add Breakpoint when Stack has had something pushed onto it.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BRK ON</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Break execution when the opcode to be executed is $00 (ie. BRK).</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BRK ALL ON</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Break execution when the opcode to be executed is $00 (ie. BRK) or any Invalid opcode.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BRK 0 OFF</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Disable breaking execution when the opcode to be executed is $00 (ie. BRK).</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BRKOP 6C</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Break execution when the opcode to be executed is $6C (ie. JMP (ABS)).</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BRKINT ON</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Break execution just after an interrupt occurs.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<br>
|
||||
</body>
|
||||
</html>
|
|
@ -1,323 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>AppleWin Debugger Tutorial</title>
|
||||
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body style="DIRECTION: ltr" lang="en-US">
|
||||
<h2><a name="Calculator"></a>Calculator</h2>
|
||||
<p>There is a basic mini hex calculator built in. It can do Addition,
|
||||
Subtraction, Division, Modulus, bit-wise And, bit-wise Or, bit-wise Exclusive
|
||||
Or, and bit-wise Negation, with Values, Register and Symbols. It will
|
||||
display results in Hex, Binary, Decimal, and as a Character (single quoted.)</p>
|
||||
<p><br>
|
||||
<br>
|
||||
</p>
|
||||
<table border="1" cellpadding="2" cellspacing="0" width="75%">
|
||||
<COLGROUP>
|
||||
<col width="26">
|
||||
<col width="64">
|
||||
<col width="166">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="10%">
|
||||
<p><font color="#ffffff"><b>Op</b></font></p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p><font color="#ffffff"><b>Name</b></font></p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><font color="#ffffff"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>+</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Plus</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Addition.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>-</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Minus</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Subtraction.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>%</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Percent</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Calculate remainder (modulus).</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>/</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Forward Slash</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Calculate quotient.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>&
|
||||
</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Ampersand</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Bit-wise AND.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>|
|
||||
</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Pipe</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Bit-Wise (inclusive) OR.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>^</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Caret</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Bit-Wise (exclusive) OR, also called XOR.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>!</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Exclamation</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Bit-Wise NOT.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><br>
|
||||
<br>
|
||||
</p>
|
||||
<h2><font size="4">Notes:</font></h2>
|
||||
<ul>
|
||||
<li>
|
||||
<p style="MARGIN-BOTTOM: 0in"><i>The unary bit-wise Negation operator, ‘!’ only effects
|
||||
the next immediate expression.</i></p>
|
||||
<li>
|
||||
<p style="MARGIN-BOTTOM: 0in"><i>There is (currently) no multiplication operator, due
|
||||
to the asterisk ‘*’ being used for the wild card operator.</i></p>
|
||||
</li>
|
||||
</ul>
|
||||
<p><br>
|
||||
<br>
|
||||
</p>
|
||||
<table bgcolor="#000000" border="0" cellpadding="2" cellspacing="0" width="75%">
|
||||
<COLGROUP>
|
||||
<col width="64">
|
||||
<col width="192">
|
||||
<tbody>
|
||||
<tr bgcolor="#00b8ff">
|
||||
<td bgcolor="#30c0ff" width="25%">
|
||||
<p><font color="#000000"><b>Input </b></font>
|
||||
</p>
|
||||
</td>
|
||||
<td bgcolor="#30c0ff" width="75%">
|
||||
<p><font color="#000000"><b>Effect </b></font>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b>CALC 9+1</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><font color="#ffffff"><i>Calculate 9+1, in hex.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">R
|
||||
A 1</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Set Accumulator to 1.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">R
|
||||
X 2</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Set X to 2.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">R
|
||||
Y 3</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Set Y to 3.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CALC
|
||||
A+X+Y</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Calculate sum of registers.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CALC
|
||||
1FF-S</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Calculate Stack Depth.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CALC
|
||||
BRKV+1</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Calculate address of Break Vector + 1<br>
|
||||
(First byte is a jump instruction.)</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CALC
|
||||
A+#A</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Calculate Accumulator plus (decimal) 10.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CALC
|
||||
A+0A</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Calculate Accumulator plus (decimal) 10.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CALC
|
||||
A+$0A</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Calculate Accumulator plus (decimal) 10.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CALC
|
||||
0A+0A</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Calculate 10 + 10, in hex.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CALC
|
||||
$RESET+1</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Calculate Address of Reset + 1 (First opcode is one byte, CLD).</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CALC
|
||||
!HOME</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Calculate bit-wise NOT.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CALC
|
||||
X & Y</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Calculate bit-wise AND of Register X , Register Y.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CALC
|
||||
X | Y</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Calculate bit-wise OR of Register X , Register Y.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CALC
|
||||
X ^ Y</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Calculate bit-wise XOR of Register X , Register Y.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CALC
|
||||
X / Y</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Calculate division of Register X , Register Y.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CALC
|
||||
X % Y</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Calculate remainder of Register X , Register Y.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p>
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
|
@ -1,412 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>AppleWin Debugger Tutorial</title>
|
||||
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body style="DIRECTION: ltr" lang="en-US">
|
||||
<h2><a name="Configuration"></a>Configuration</h2>
|
||||
<p><br>
|
||||
<br>
|
||||
</p>
|
||||
<h3><a name="Colors"></a>Colors</h3>
|
||||
<p>The commands to change color schemes, and colors are:</p>
|
||||
<p><br>
|
||||
<br>
|
||||
</p>
|
||||
<table border="0" cellpadding="2" cellspacing="0" width="80%">
|
||||
<COLGROUP>
|
||||
<col width="64">
|
||||
<col width="192">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#ffffff"><b>Command</b></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p style="FONT-STYLE: normal"><font color="#ffffff"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">COLOR</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Switch
|
||||
to color scheme.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">MONO</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Switch
|
||||
to monochrome scheme.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">COLOR
|
||||
#</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Displays
|
||||
the Red, Green, and Blue values for the specified color.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">COLOR
|
||||
# # # #<br>
|
||||
|
||||
COLOR # R G B</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Sets
|
||||
the colors to the new Red, Green, and Blue values.<br>
|
||||
|
||||
First # is the color.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><br>
|
||||
<br>
|
||||
</p>
|
||||
<p>Some people prefer monochrome (easier on the eyes, in full screen), so you may
|
||||
want to use that setting:</p>
|
||||
<br>
|
||||
<p><font size="4"><b>Examples</b>:</font></p>
|
||||
<table bgcolor="#000000" border="0" cellpadding="2" cellspacing="0" width="75%">
|
||||
<COLGROUP>
|
||||
<col width="64">
|
||||
<col width="192">
|
||||
<tbody>
|
||||
<tr bgcolor="#00b8ff">
|
||||
<td bgcolor="#30c0ff" width="25%">
|
||||
<p><font color="#000000"><b>Input</b></font></p>
|
||||
</td>
|
||||
<td bgcolor="#30c0ff" width="75%">
|
||||
<p><font color="#000000"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b>MONO</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><font color="#ffffff"><i>Switch to the monochrome scheme.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b>COLOR</b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Switch to the color scheme.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">COLOR
|
||||
0 10 20 40</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Sets the console background color to slate gray: RGB 10,20,40</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<br>
|
||||
<h3><a name="Fonts"></a>Fonts</h3>
|
||||
<p>The font Type, and Spacing can be configured, to show more or less lines in the
|
||||
disassembly window.</p>
|
||||
<br>
|
||||
<table border="0" cellpadding="2" cellspacing="0" width="80%">
|
||||
<COLGROUP>
|
||||
<col width="64">
|
||||
<col width="192">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#ffffff"><b>Command</b></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p style="FONT-STYLE: normal"><font color="#ffffff"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b>FONT MODE #</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>Set disassembler line spacing for the current font.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b>FONT “name”</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>Switch disassembler to new font.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b>FONT “name” #</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>Switch disassembler to new font with specified height (in pixels)</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<br>
|
||||
<p><font size="4"><b>Examples</b>:</font></p>
|
||||
<table border="0" cellpadding="2" cellspacing="0" width="799">
|
||||
<COLGROUP>
|
||||
<col width="276">
|
||||
<col width="515">
|
||||
<tbody>
|
||||
<tr bgcolor="#00b8ff">
|
||||
<td bgcolor="#30c0ff" width="276">
|
||||
<p><font color="#000000"><b>Input</b></font></p>
|
||||
</td>
|
||||
<td bgcolor="#30c0ff" width="515">
|
||||
<p><font color="#000000"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="276">
|
||||
<p><font color="#30c0ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">FONT
|
||||
MODE 0</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="515">
|
||||
<p><font color="#ffffff">“<i>Classic” Line Spacing. Shows the fewest amount of lines.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="276">
|
||||
<p><font color="#30c0ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">FONT
|
||||
MODE 1</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="515">
|
||||
<p><font color="#ffffff">“<i>Improved” Line Spacing. (Default)</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="276">
|
||||
<p><font color="#30c0ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">FONT
|
||||
MODE 2</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="515">
|
||||
<p><font color="#ffffff">“<i>Minimal” Line Spacing. Shows the most amount of lines.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="276">
|
||||
<p><font color="#30c0ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">FONT
|
||||
“Arial”</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="515">
|
||||
<p><font color="#ffffff"><i>Switch disassembler font to Arial.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="276">
|
||||
<p><font color="#30c0ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">FONT
|
||||
“Courier New”</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="515">
|
||||
<p><i>Switch disassembler font to Courier New.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<br>
|
||||
<h3><a name="Scripts"></a>Scripts</h3>
|
||||
<p>
|
||||
You can run custom batch or script files that contain debugger commands.
|
||||
Scripts files do not echo their input; to print a string to the output console
|
||||
window, use the <b>ECHO</b> command. NB. When AppleWin initially starts-up, it
|
||||
will attempt to auto-run '<b>DebuggerAutoRun.txt</b>' (located in the same folder
|
||||
as AppleWin.exe).
|
||||
</p>
|
||||
<br>
|
||||
<table border="0" cellpadding="2" cellspacing="0" width="80%">
|
||||
<COLGROUP>
|
||||
<col width="64">
|
||||
<col width="192">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#ffffff"><b>Command</b></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p style="FONT-STYLE: normal"><font color="#ffffff"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b>RUN </b></font></font><b><span style="COLOR: black; FONT-FAMILY: Courier">filename</span></b></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>Runs the specified script filename; the filename may be quoted</i><i>.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><b><span style="COLOR: black; FONT-FAMILY: Courier">ECHO string</span></b></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>Echo the text to the debugger console. The string may optionally be quoted.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<br>
|
||||
<p><font size="4"><b>Examples</b>:</font></p>
|
||||
<table border="0" cellpadding="2" cellspacing="0" width="799">
|
||||
<COLGROUP>
|
||||
<col width="276">
|
||||
<col width="515">
|
||||
<tbody>
|
||||
<tr bgcolor="#00b8ff">
|
||||
<td bgcolor="#30c0ff" width="276">
|
||||
<p><font color="#000000"><b>Input</b></font></p>
|
||||
</td>
|
||||
<td bgcolor="#30c0ff" width="515">
|
||||
<p><font color="#000000"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="276">
|
||||
<p><b><span style="BACKGROUND: black 0% 50%; COLOR: rgb(48,192,255); FONT-FAMILY: Courier; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">RUN
|
||||
“Test.txt”</span></b></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="515"><span style="COLOR: white">Runs
|
||||
the script file called: “Test.txt”</span></td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="276">
|
||||
<p><b><span style="BACKGROUND: black 0% 50%; COLOR: rgb(48,192,255); FONT-FAMILY: Courier; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">ECHO
|
||||
“Hello World”</span></b></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="515"><span style="COLOR: white">Prints
|
||||
the classic “Hello World” to the output console.</span></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<br>
|
||||
<h3><a name="Settings"></a>Settings</h3>
|
||||
<p>Coming in a future revision, you can save or load your debugger settings, either
|
||||
piece wise, or as a whole.
|
||||
</p>
|
||||
<br>
|
||||
<table border="0" cellpadding="2" cellspacing="0" width="90%">
|
||||
<COLGROUP>
|
||||
<col width="90">
|
||||
<col width="166">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="35%">
|
||||
<p><font color="#ffffff"><b>Command</b></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="65%">
|
||||
<p style="FONT-STYLE: normal"><font color="#ffffff"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="35%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CONFIG
|
||||
LOAD</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Load
|
||||
(default) debugger configuration.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="35%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CONFIG
|
||||
LOAD “filename”</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Load
|
||||
(named) debugger configuration</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="35%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CONFIG
|
||||
SAVE</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Save
|
||||
(default) debugger configuration.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="35%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CONFIG
|
||||
SAVE “filename”</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Save
|
||||
(named) debugger configuration</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table border="0" cellpadding="2" cellspacing="0" width="90%">
|
||||
<COLGROUP>
|
||||
<col width="90">
|
||||
<col width="166">
|
||||
<tbody>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="35%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">COLOR
|
||||
LOAD “filename”</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Load
|
||||
color configuration.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="35%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">COLOR
|
||||
SAVE “filename”</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Save
|
||||
color configuration</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="35%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BP
|
||||
LOAD “filename”</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Load
|
||||
breakpoint configuration.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="35%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">BP
|
||||
SAVE “filename”</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Save
|
||||
breakpoint configuration</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<br>
|
||||
<p>Hope you enjoyed the tour!</p>
|
||||
</body>
|
||||
</html>
|
|
@ -1,193 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>AppleWin Debugger Tutorial</title>
|
||||
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body style="DIRECTION: ltr" lang="en-US">
|
||||
<h2><a name="Entering-Debugger"></a>Entering the Debugger</h2>
|
||||
<p>Start AppleWin, and press <b><font face="Courier, monospace">F7</font></b> to
|
||||
enter the debugger.</p>
|
||||
<p>The first thing you'll probably notice is the new syntax coloring in the
|
||||
disassembly view, and info panel. All the colors can be customized to
|
||||
your liking. See the <a href="dbg-configuration.html#Colors">Colors</a> section for details.</p>
|
||||
<p>Since the mini-console isn't the full width of the screen, you can toggle
|
||||
between the full-screen console with the tilde '~' key. This style of table
|
||||
will be used to designate which keys the debugger will recognize.</p>
|
||||
<table border="1" cellpadding="2" cellspacing="0" width="75%">
|
||||
<COLGROUP>
|
||||
<col width="26">
|
||||
<col width="64">
|
||||
<col width="166">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="10%">
|
||||
<p><font color="#ffffff"><b>Key</b></font></p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p><font color="#ffffff"><b>Name</b></font></p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><font color="#ffffff"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p><b>~</b><br>
|
||||
<font face="Wingdings">ñ</font>`</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Tilde<br>
|
||||
Shift-Accent</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Toggle full screen console (US keyboards)</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p><font face="Wingdings">ñ</font>/<br>
|
||||
<font face="Wingdings">ñ</font>@</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Shift Forward Slash<br>
|
||||
Shift At</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Toggle full screen console (European keyboards)</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><br>
|
||||
<br>
|
||||
</p>
|
||||
<p>The debugger will print out a mini message at the bottom of the console when it
|
||||
is first started. Help is built-in for some of the commands (with more
|
||||
coming every release.) Most commands will display a help usage, if you
|
||||
simply type the command and press Enter.
|
||||
</p>
|
||||
<p>This typeface, and color will be used to designate commands you can type into
|
||||
the debugger.
|
||||
</p>
|
||||
<table border="0" cellpadding="2" cellspacing="0" width="75%">
|
||||
<COLGROUP>
|
||||
<col width="64">
|
||||
<col width="192">
|
||||
<tbody>
|
||||
<tr bgcolor="#00b8ff">
|
||||
<td bgcolor="#30c0ff" width="25%">
|
||||
<p><font color="#000000"><b>Input</b></font></p>
|
||||
</td>
|
||||
<td bgcolor="#30c0ff" width="75%">
|
||||
<p><font color="#000000"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#30c0ff"><font face="Courier"><b>HELP</b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Display Help for specific command.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#30c0ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">?</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Display Help Summary.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#30c0ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">VERSION</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Display both the AppleWin and Debugger Version.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><br>
|
||||
<br>
|
||||
</p>
|
||||
<p><b>Note</b>: <i>Please include both the AppleWin and Debugger version when reporting
|
||||
bugs about the Debugger. Sometimes a preview (Beta) version of the
|
||||
debugger is available before the next official AppleWin version is
|
||||
available. Older bugs (may already) be fixed in the new version.
|
||||
The version number will help both you and the developers to detect if you’re
|
||||
documenting a new bug, submitting an already existing bug, or re-submitting a
|
||||
bug that has already been fixed. </i>
|
||||
<br>
|
||||
</p>
|
||||
|
||||
<h2><a name="Exiting-Debugger"></a>Exiting the Debugger</h2>
|
||||
<p>In general, press <b><font face="Courier, monospace">F7</font></b> to exit the debugger.<br>
|
||||
NB. If you have breakpoints set then you will exit the debugger in 'stepping' mode.<br><br>
|
||||
Other ways to exit the debugger and force 'stepping' mode are:
|
||||
</p>
|
||||
<table border="1" cellpadding="2" cellspacing="0" width="75%">
|
||||
<COLGROUP>
|
||||
<col width="26">
|
||||
<col width="64">
|
||||
<col width="166">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="14%">
|
||||
<p><font color="#ffffff"><b>Command</b></font></p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p><font color="#ffffff"><b>Run at normal speed?</b></font></p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p><font color="#ffffff"><b>Run at full speed?</b></font></p>
|
||||
</td>
|
||||
<td width="18%">
|
||||
<p><font color="#ffffff"><b>Video quality</b></font></p>
|
||||
</td>
|
||||
<td width="18%">
|
||||
<p><font color="#ffffff"><b>Sound quality</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="14%">
|
||||
<p>G</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>yes</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>only if disk active, etc</p>
|
||||
</td>
|
||||
<td width="18%">
|
||||
<p>precise</p>
|
||||
</td>
|
||||
<td width="18%">
|
||||
<p>precise</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="14%">
|
||||
<p>GG</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>no</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>always</p>
|
||||
</td>
|
||||
<td width="18%">
|
||||
<p>periodic</p>
|
||||
</td>
|
||||
<td width="18%">
|
||||
<p>muted</p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<br>
|
||||
<p>Finally to exit 'stepping' and return to the debugger, use F7, the Pause key or the Debugger toolbar button.
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
|
@ -1,274 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>AppleWin Debugger Tutorial</title>
|
||||
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body style="DIRECTION: ltr" lang="en-US">
|
||||
<h1>
|
||||
Execution</h1>
|
||||
<p>As you scroll around, you will notice the cursor and other lines change
|
||||
colors. Normally the cursor line is shown with an inverse bar, that is
|
||||
with a white background. Other colors have these meanings:
|
||||
</p>
|
||||
<table border="1" bordercolor="#000000" cellpadding="2" cellspacing="0" width="666">
|
||||
<COLGROUP>
|
||||
<col width="161">
|
||||
<col width="494">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="161">
|
||||
<p><font color="#ffffff"><b>Cursor Background</b></font></p>
|
||||
</td>
|
||||
<td width="494">
|
||||
<p><font color="#ffffff"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="161">
|
||||
<p>White
|
||||
</p>
|
||||
</td>
|
||||
<td width="494">
|
||||
<p><i>Address of cursor.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td bgcolor="#ffff00" width="161">
|
||||
<p>Yellow (Bright)</p>
|
||||
</td>
|
||||
<td width="494">
|
||||
<p><i>Cursor is on next 6502 instruction (At 6502 PC).</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td bgcolor="#cccc00" width="161">
|
||||
<p>Yellow (Dim)</p>
|
||||
</td>
|
||||
<td width="494">
|
||||
<p><i>Line is next 6502 instruction (At 6502 PC).</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td bgcolor="#ff0000" width="161">
|
||||
<p>Red (Bright)</p>
|
||||
</td>
|
||||
<td width="494">
|
||||
<p><i>Cursor is on active Breakpoint.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><br>
|
||||
<br>
|
||||
</p>
|
||||
<p>Press Right Arrow to locate the current 6502 instruction. If you Page
|
||||
Down, you can see that Branch Indicators are displayed on the right side of the
|
||||
disassembly window, designated by ‘<font face="Webdings, serif">5</font>’ or ‘<font face="Webdings, serif">6</font>’. </p>
|
||||
<p>Press Right Arrow to again locate the current instruction. You will also
|
||||
notice immediate instructions have a character single quoted, after them, such
|
||||
as ‘<font face="Courier, monospace">I’</font> at $<b>FA75</b>.</p>
|
||||
<p>Pressing Space, will Trace (into) an instruction. Sometimes you trace
|
||||
into a JSR (subroutine), and wish you hadn't. Pressing Shift-Space will "<i>Step
|
||||
Out</i>" - that is, run until the Program Counter (PC) is equal to the
|
||||
return address on the stack. Pressing Left Arrow will jump the cursor to
|
||||
the next instruction after the original call.
|
||||
</p>
|
||||
<br>
|
||||
<p><font size="4"><b>Notes</b>:</font></p>
|
||||
<ul>
|
||||
<li>
|
||||
<p><i>Some code will place the arguments to the subroutine after the JSR
|
||||
instruction. The debugger is not able to detect this and "<b>Step Out</b>"
|
||||
correctly, so use caution, if the sub-routine plays with the stack.</i></p>
|
||||
<li>
|
||||
<p>
|
||||
<i>The debugger is not able to detect if the top 2 bytes on the stack is a valid
|
||||
return address, so pay careful attention if the stack is modified!</i></p>
|
||||
</li>
|
||||
</ul>
|
||||
<br>
|
||||
<table border="1" cellpadding="2" cellspacing="0" width="75%">
|
||||
<COLGROUP>
|
||||
<col width="26">
|
||||
<col width="64">
|
||||
<col width="166">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="10%">
|
||||
<p><font color="#ffffff"><b>Key</b></font></p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p><font color="#ffffff"><b>Name</b></font></p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><font color="#ffffff"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p><font face="Wingdings">§</font>
|
||||
</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Space
|
||||
</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Trace into instruction.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p><font face="Wingdings">ñ§</font>
|
||||
</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Shift-Space
|
||||
</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Step out of subroutine.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>^<font face="Wingdings">§</font>
|
||||
</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Ctrl-Space
|
||||
</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Trace over instruction.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>^<font face="Wingdings">â</font>
|
||||
</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Ctrl-Down Arrow
|
||||
</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Run until cursor.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>^<font face="Wingdings">à</font>
|
||||
</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Ctrl-Right Arrow</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Set PC to cursor.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p><font face="Wingdings">ß</font>
|
||||
</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Left Arrow
|
||||
</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Jump cursor to return address on stack.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><br>
|
||||
<br>
|
||||
</p>
|
||||
<table bgcolor="#000000" border="0" cellpadding="2" cellspacing="0" width="90%">
|
||||
<COLGROUP>
|
||||
<col width="90">
|
||||
<col width="166">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="35%">
|
||||
<p><font color="#ffffff"><b>Command</b></font></p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p style="FONT-STYLE: normal"><font color="#ffffff"><b>Description</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="35%">
|
||||
<p>G [StopAddress]<br>
|
||||
GG [StopAddress]</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Resume execution until PC = StopAddress.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="35%">
|
||||
<p>G [StopAddress] [SkipAddress,Length]<br>
|
||||
GG [StopAddress] [SkipAddress,Length]</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Resume execution until PC = StopAddress.<br>
|
||||
Additionally, if the PC exits the range [SkipAddress,Length],<br>
|
||||
execution will be halted.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="35%">
|
||||
<p>####G</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Alias for: R PC [=] address and then G.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><br>NB. The GG command resumes execution in full-speed. See <a href="dbg-entering-debugger.html#Exiting-Debugger">Exiting the Debugger</a>.
|
||||
</p>
|
||||
<p><br>
|
||||
<br>
|
||||
</p>
|
||||
<table bgcolor="#000000" border="0" cellpadding="2" cellspacing="0" width="90%">
|
||||
<COLGROUP>
|
||||
<col width="90">
|
||||
<col width="166">
|
||||
<tbody>
|
||||
<tr bgcolor="#00b8ff">
|
||||
<td bgcolor="#30c0ff" width="35%">
|
||||
<p><font color="#000000"><b>Input</b></font></p>
|
||||
</td>
|
||||
<td bgcolor="#30c0ff" width="65%">
|
||||
<p><font color="#000000"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="35%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b>R PC FA62 </b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><font color="#ffffff"><i>Set Program Counter to Value $<b><font color="#ffff00">FA62</font></b>
|
||||
(RESET) </i></font>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="35%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">G C600 D000,3000</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="65%">
|
||||
<p><font color="#ffffff"><i>Single-step until either PC = $C600, or PC <= $D000</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<br>
|
||||
</body>
|
||||
</html>
|
|
@ -1,246 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>AppleWin Debugger Tutorial</title>
|
||||
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body style="DIRECTION: ltr" lang="en-US">
|
||||
<h1>Flags</h1>
|
||||
<p>Each flag can individually be set or cleared in the Processor Status Register ('<b>P</b>').
|
||||
Cleared flags will show up with a normal background. Set flags will show
|
||||
with an inverse background.
|
||||
</p>
|
||||
<br>
|
||||
<p><font size="4"><b>Notes</b>:</font></p>
|
||||
<ul>
|
||||
<li> Shift+Left mouse button can be used to toggle the state of individual flags.</li>
|
||||
<li>
|
||||
<p style="MARGIN-BOTTOM: 0in"><i>The legacy commands <b>R</b>? and <b>S</b>?, where? is
|
||||
a flag name (C,Z,I,D,B,R,V,N) has been left in.</i></p>
|
||||
</li>
|
||||
</ul>
|
||||
<p><br>
|
||||
<br>
|
||||
</p>
|
||||
<p><font size="4">Commands to set a flag:</font></p>
|
||||
<table bgcolor="#cccccc" border="0" cellpadding="2" cellspacing="0" width="75%">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="25%">
|
||||
<p><font color="#ffffff"><b>Command</b></font></p>
|
||||
</td>
|
||||
<td>
|
||||
<p style="FONT-STYLE: normal"><font color="#ffffff"><b>Description</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td>
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">SEC
|
||||
</span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td>
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Set
|
||||
Carry </span></i>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td>
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">SEZ
|
||||
</span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td>
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Set
|
||||
Zero </span></i>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td>
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">SEI
|
||||
</span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td>
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Set
|
||||
Interrupts Disabled </span></i>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td>
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">SED
|
||||
</span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td>
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Set
|
||||
Decimal (BCD) mode </span></i>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td>
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">SEB
|
||||
</span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td>
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Set
|
||||
Break </span></i>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td>
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">SER
|
||||
</span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td>
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Set
|
||||
Reserved (not used on 6502)</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td>
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">SEV
|
||||
</span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td>
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Set
|
||||
Overflow </span></i>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td>
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">SEN
|
||||
</span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td>
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Set
|
||||
Negative </span></i>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><br>
|
||||
<br>
|
||||
</p>
|
||||
<p><font size="4">Commands to clear a flag:</font></p>
|
||||
<table bgcolor="#000000" border="0" cellpadding="2" cellspacing="0" width="75%">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="25%">
|
||||
<p><font color="#ffffff"><b>Command</b></font></p>
|
||||
</td>
|
||||
<td>
|
||||
<p style="FONT-STYLE: normal"><font color="#ffffff"><b>Description</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td>
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CLC
|
||||
</span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td>
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Clear
|
||||
Carry </span></i>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td>
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CLZ
|
||||
</span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td>
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Clear
|
||||
Zero </span></i>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td>
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CLI
|
||||
</span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td>
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Clear
|
||||
Interrupts Disabled </span></i>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td>
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CLD
|
||||
</span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td>
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Clear
|
||||
Decimal (BCD) mode </span></i>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td>
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CLB
|
||||
</span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td>
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Clear
|
||||
Break </span></i>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td>
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CLR
|
||||
</span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td>
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Clear
|
||||
Reserved (not used on 6502)</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td>
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CLV
|
||||
</span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td>
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Clear
|
||||
Overflow </span></i>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td>
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CLN
|
||||
</span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td>
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Clear
|
||||
Negative </span></i>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<br>
|
||||
</body>
|
||||
</html>
|
|
@ -1,373 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>AppleWin Debugger Tutorial</title>
|
||||
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body style="DIRECTION: ltr" lang="en-US">
|
||||
<h1><a name="Memory">Memory</a></h1>
|
||||
<h3><a name="Memory_View">Viewing Memory</a></h3>
|
||||
<p>There are two mini-memory areas on the info panel. You can view memory in
|
||||
Hex, (normal 7-Bit) ASCII, or Apple (8-Bit) TEXT format.</p>
|
||||
<p>Control characters are shown in yellow. The Apple uses something called
|
||||
8-Bit (High-Bit) ASCII, in which the first 128 characters (normal ASCII) are
|
||||
also mapped onto the last 128 characters, but with a different
|
||||
background. (Technically, the first 64 characters are drawn inverse, the
|
||||
next 64 characters flashing, and the last 128 normally.) Some programs
|
||||
will store text in this extended Apple format, where a High-Bit character can
|
||||
be used as a flag to represent an end of word.</p>
|
||||
<p>Here is a summary:</p>
|
||||
<ul>
|
||||
<li>
|
||||
<p style="MARGIN-BOTTOM: 0in"><i>Normal ASCII (non-control characters) will show up in
|
||||
cyan; High-Bit text in white.</i></p>
|
||||
<li>
|
||||
<p style="MARGIN-BOTTOM: 0in"><i>Apple TEXT (normal ASCII) will also display with an
|
||||
inverse background; High-Bit with a normal background.</i></p>
|
||||
</li>
|
||||
</ul>
|
||||
<br>
|
||||
<table border="0" cellpadding="2" cellspacing="0" width="75%">
|
||||
<COLGROUP>
|
||||
<col width="64">
|
||||
<col width="192">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#ffffff"><b>Command</b></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p style="FONT-STYLE: normal"><font color="#ffffff"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b>M1 ####</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>View mini-memory 1 in Hex at the Address</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b>M2 ####</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>View mini-memory 2 in Hex at the Address</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b>MA1 ####</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>View mini-memory 1 in ASCII at the Address</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b>MA2 ####</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>View mini-memory 2 in ASCII at the Address</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b>MT1 ####</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>View mini-memory 1 in “Apple Text” at the Address</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b>MT2 ####</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>View mini-memory 1 in “Apple Text” at the Address</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b>D ####</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>Alias for M1</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><font size="4"><b>Examples</b>:</font></p>
|
||||
<table bgcolor="#000000" border="0" cellpadding="2" cellspacing="0" width="90%">
|
||||
<COLGROUP>
|
||||
<col width="64">
|
||||
<col width="192">
|
||||
<tbody>
|
||||
<tr bgcolor="#00b8ff">
|
||||
<td bgcolor="#30c0ff" width="25%">
|
||||
<p><font color="#000000"><b>Input </b></font>
|
||||
</p>
|
||||
</td>
|
||||
<td bgcolor="#30c0ff" width="75%">
|
||||
<p><font color="#000000"><b>Effect </b></font>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b>MA1 D0D0</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><font color="#ffffff"><i>View Applesoft Tokens (Low ASCII cyan, High ASCII white)</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">MT2
|
||||
FF0A</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>View Apple message displayed when booted, showing Apple Model.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">DATA</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Switch to the Data Window to view memory. Most scrolling keys
|
||||
work.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CODE</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Switch to the Code Window to view the disassembler.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<br>
|
||||
<h3><a name="Memory_Search">Searching Memory</a></h3>
|
||||
<p>You can search memory for hex values. Wildcard support is also supported
|
||||
via the '<b>?</b>' wildcard operator, including nibble searching. A
|
||||
single '<b>?</b>' by itself, means match one byte of any value. A hex
|
||||
value with the high nibble or low nibble of '<b>?</b>' will mask off the
|
||||
corresponding nibble. (At the moment there is no way to refer to the
|
||||
list of results. A future version will support _# to reference
|
||||
search result's addresses.)</p>
|
||||
<p>Searching memory for text is forthcoming in a future version of the debugger.</p>
|
||||
<br>
|
||||
<table border="0" cellpadding="2" cellspacing="0" width="75%">
|
||||
<COLGROUP>
|
||||
<col width="64">
|
||||
<col width="192">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#ffffff"><b>Command</b></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000" face="Courier"><b>SH #,len byte1 …</b></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>Search memory for 8-bit hex value(s).</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b>SH #,len word1 …</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>Search memory for 16-bit value(s).</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<br>
|
||||
<p><font size="4"><b>Examples</b>:</font></p>
|
||||
<table bgcolor="#000000" border="0" cellpadding="2" cellspacing="0" width="90%">
|
||||
<COLGROUP>
|
||||
<col width="64">
|
||||
<col width="192">
|
||||
<tbody>
|
||||
<tr bgcolor="#00b8ff">
|
||||
<td bgcolor="#30c0ff" width="25%">
|
||||
<p><font color="#000000"><b>Input </b></font>
|
||||
</p>
|
||||
</td>
|
||||
<td bgcolor="#30c0ff" width="75%">
|
||||
<p><font color="#000000"><b>Effect </b></font>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="25%">
|
||||
<p><b><font color="#00b8ff" face="Courier">SH 800,8000 C030</font></b></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><font color="#ffffff">Search memory for speaker access.</font></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><b><font color="#00b8ff" face="Courier">SH 800,8000 AD ? C0</font></b></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><i><font color="#ffffff">Search memory for “ <b>LDA $<font color="#ffff00">C0xx</font></b>”.</font></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><b><font color="#00b8ff" face="Courier">SH 800,8000 3? C0</font></b></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><i><font color="#ffffff">Search memory for speaker access <b>$<font color="#ffff00">C03x</font></b>.</font></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><b><font color="#00b8ff" face="Courier">SH 800,8000 ?1 C0</font></b></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><i><font color="#ffffff">Search memory for soft-switch $<b><font color="#ffff00">C0x1</font></b>.</font></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><b><font color="#00b8ff" face="Courier">L _1</font></b></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><i><font color="#ffffff">Disassemble from search result #<b><font color="#ffff00">1</font></b>
|
||||
address.</font></i></p>
|
||||
<p><i><font color="#ffffff">Note: Not yet implemented!</font></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<br>
|
||||
<h3><a name="Memory_Change">Changing Memory</a></h3>
|
||||
<p>To change the Apple's memory, the classic "Apple Monitor" command to enter
|
||||
memory is recognized, as well as the "normal" debugger comamnd.<br>
|
||||
</p>
|
||||
<br>
|
||||
<table border="0" cellpadding="2" cellspacing="0" width="75%">
|
||||
<COLGROUP>
|
||||
<col width="64">
|
||||
<col width="192">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#ffffff"><b>Command</b></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b>####:byte1 …</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>Classic "Apple Monitor" command to enter byte(s). Alias for E.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000" face="Courier"><b>E addr byte1 …</b></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>Set memory to the 8-Bit (byte) value(s)</i><i>.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000" face="Courier"><b>EB symbol ####</b></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>Alias for E.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b>E8 symbol ####</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>Alias for E.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b>EW symbol ####</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>Set memory (at the symbol Address) to the 16-Bit (word) Value(s).</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b>E16 symbol ####</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>Alias for EW.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b>NOP</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>Writes an “NOP” opcode (EA) at the current Program Counter (PC)</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b>ZAP</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>Alias for NOP.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<br>
|
||||
<p><font size="4"><b>Examples</b>:</font></p>
|
||||
<table bgcolor="#000000" border="0" cellpadding="2" cellspacing="0" width="90%">
|
||||
<COLGROUP>
|
||||
<col width="64">
|
||||
<col width="192">
|
||||
<tbody>
|
||||
<tr bgcolor="#00b8ff">
|
||||
<td bgcolor="#30c0ff" width="25%">
|
||||
<p><font color="#000000"><b>Input </b></font>
|
||||
</p>
|
||||
</td>
|
||||
<td bgcolor="#30c0ff" width="75%">
|
||||
<p><font color="#000000"><b>Effect </b></font>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b>300:60</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="COLOR: white">Same
|
||||
as Applesoft Poke 768,96</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<h2>
|
||||
<br>
|
||||
</h2>
|
||||
</body>
|
||||
</html>
|
|
@ -1,296 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>AppleWin Debugger Tutorial</title>
|
||||
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body style="DIRECTION: ltr" lang="en-US">
|
||||
<h2><a name="Registers1"></a>Registers</h2>
|
||||
<p>The command line now recognizes 6502 Registers. Namely,
|
||||
</p>
|
||||
<ul>
|
||||
<li>
|
||||
<p><b>A</b>, the Accumulator,</p>
|
||||
<li>
|
||||
<p style="MARGIN-BOTTOM: 0in"><b>X</b>, the 1<sup>st</sup> Index Register,</p>
|
||||
<li>
|
||||
<p style="MARGIN-BOTTOM: 0in"><b>Y</b>, the 2<sup>nd</sup> Index Register,</p>
|
||||
<li>
|
||||
<p style="MARGIN-BOTTOM: 0in"><b>PC</b>, the Program Counter,
|
||||
</p>
|
||||
<li>
|
||||
<p style="MARGIN-BOTTOM: 0in"><b>S</b>, the Stack Pointer, and
|
||||
</p>
|
||||
<li>
|
||||
<p><b>P</b>, the Processor Status Register (Flags).</p>
|
||||
</li>
|
||||
</ul>
|
||||
<p>You can set a Register to a hex Value, Symbol, or Expression. (See the
|
||||
section <a href="#Calculator">Calculator</a> for more examples of using
|
||||
expressions.) The syntax is:</p>
|
||||
<br>
|
||||
<table bgcolor="#e6e6e6" border="0" cellpadding="2" cellspacing="0" width="75%">
|
||||
<COLGROUP>
|
||||
<col width="64">
|
||||
<col width="192">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#ffffff"><b>Command</b></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p style="FONT-STYLE: normal"><font color="#ffffff"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">R
|
||||
r [=] ####</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Set
|
||||
Register to (a byte) Value, Symbol, or Address, or Expression.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">R
|
||||
A ##</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Set
|
||||
Accumulator to (a byte) Value</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">R
|
||||
X ##</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Set
|
||||
Register X to (a byte) Value</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">R
|
||||
Y ##</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Set
|
||||
Register Y to (a byte) Value</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">R
|
||||
PC ####</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Set
|
||||
PC to (a full 16-bit) Address (Value)</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">R
|
||||
S ##</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Set
|
||||
Stack Register to (an 8-Bit) Offset</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">R
|
||||
P ##</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Set
|
||||
Processor Status Register (flags) to (a byte) Value</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><br>
|
||||
<br>
|
||||
</p>
|
||||
<p><b>Notes</b>:</p>
|
||||
<ul>
|
||||
<li>
|
||||
<p style="MARGIN-BOTTOM: 0in"><i>Since <b>A</b> refers to the Accumulator, you need to
|
||||
prefix the hex number <b>A</b> with either:<br>
|
||||
i) a zero '<b>0</b>', or<br>
|
||||
ii) the hash '<b>#</b>' symbol (same as 6502 immediate
|
||||
symbol.)</i></p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul>
|
||||
<li>
|
||||
<p><i>You can prefix a symbol with the dollar sign '<b>$</b>' to tell the parser it is
|
||||
a symbol Address instead of a Value.</i></p>
|
||||
<li>
|
||||
<p><i>If a symbol is not defined, the expression will be the corresponding hex Value,
|
||||
if possible.</i></p>
|
||||
<li>
|
||||
<p><i>Hex Values may be ambiguous, if their corresponding symbol is defined. To
|
||||
avoid confusion, don’t define symbols such as the popular $DEAD, $BEEF, $C0DE,
|
||||
$CAFE, etc. An example is given with A1.</i></p>
|
||||
</li>
|
||||
</ul>
|
||||
<br>
|
||||
<p><font size="4"><b>Examples</b>:</font></p>
|
||||
<table bgcolor="#000000" border="0" cellpadding="2" cellspacing="0" width="90%">
|
||||
<COLGROUP>
|
||||
<col width="64">
|
||||
<col width="192">
|
||||
<tbody>
|
||||
<tr bgcolor="#00b8ff">
|
||||
<td bgcolor="#30c0ff" width="25%">
|
||||
<p><font color="#000000"><b>Input</b></font></p>
|
||||
</td>
|
||||
<td bgcolor="#30c0ff" width="75%">
|
||||
<p><font color="#000000"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b>R PC FA62 </b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><font color="#ffffff"><i>Set Program Counter to Value $<b><font color="#ffff00">FA62</font></b>
|
||||
(RESET) </i></font>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">R
|
||||
PC RESET + 1</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Set Program Counter to Address $<b><font color="#ffff00">FA63</font></b>
|
||||
(RESET+1)</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">R
|
||||
X 2 </span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Set Register to Value <font style="FONT-WEIGHT: bold" color="#ffff00">
|
||||
2</font></i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">R
|
||||
Y 3 </span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Set Register to Value <font style="FONT-WEIGHT: bold" color="#ffff00">
|
||||
3</font></i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">R
|
||||
S 1FE </span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Set Stack Pointer to depth of one (Stack grows down from $01FF)</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">R
|
||||
S FF </span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Set Stack Pointer to top of stack (Empty)</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">R
|
||||
A 0A </span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Set Accumulator to hex Value <font style="FONT-WEIGHT: bold" color="#ffff00">
|
||||
0A</font></i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">R
|
||||
A #A </span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Set Accumulator to hex Value <font style="FONT-WEIGHT: bold" color="#ffff00">
|
||||
0A</font></i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">R
|
||||
X A </span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Set Register X to Accumulator’s Value</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">R
|
||||
A A1 </span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>If the symbol A1 exists, sets Accumulator to the <b>Address</b>
|
||||
of the symbol <b>A1</b><br>
|
||||
If the symbol A1 <b>doesn't</b> exist, sets Accumulator to the hex <b>Value</b> <font style="FONT-WEIGHT: bold" color="#ffff00">
|
||||
A1</font></i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">R
|
||||
A $A1 </span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>If the symbol A1 exists, sets the Accumulator to the <b>Address</b>
|
||||
of symbol <b>A1<br>
|
||||
</b>If the symbol A1 <b>doesn't</b> exist, sets Accumulator to the hex Value <font style="FONT-WEIGHT: bold" color="#ffff00">
|
||||
A1</font></i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">R
|
||||
A #A1 </span></b></font></font>
|
||||
</p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p><font color="#ffffff"><i>Sets Accumulator to the hex value <b><font color="#ffff00">A1</font></b></i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p>
|
||||
<br>
|
||||
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
|
@ -1,60 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>AppleWin Debugger Tutorial</title>
|
||||
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body style="DIRECTION: ltr" lang="en-US">
|
||||
<h2></a><a name="Debugger Screen Layout"></a>Debugger Screen Layout</h2>
|
||||
<p>This section gives an overview of the debugger's screen layout.</p>
|
||||
|
||||
<p>Here's a typical debugger view (with annotations describing the parts):</p>
|
||||
|
||||
<img src="img/debugger-layout-annotated.png" hspace="5" vspace="5">
|
||||
|
||||
<h3><a name="Soft-switches"></a>Soft-switches</h3>
|
||||
<p>This encodes information about the video and MMU soft-switches.</p>
|
||||
|
||||
<p>The first 5 rows describe the current <b>video</b> settings and can be interpreted as follows:
|
||||
<ul>
|
||||
<li>50: $C050 - GR /TEXT (inverse indicates which is active)
|
||||
<li>52: $C052 - FULL/MIX (inverse indicates which is active)
|
||||
<li>54: $C054 - PAGE 1/2 (inverse indicates which is active)
|
||||
<li>56: $C056 - LO/HIRES (inverse indicates which is active)
|
||||
<li>5E: $C05E - DHGR/HGR (inverse indicates which is active)
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
<p>The next 6 rows describe the current <b>MMU</b> settings and can be interpreted as follows:
|
||||
<ul>
|
||||
<li>00: $C000 - 80Sto0/1 (inverse indicates state of 80STORE)
|
||||
<li>02: $C002-C005: Rm/xWm/x (NB. 'R' is blue and 'W' is red for readability)
|
||||
<ul>
|
||||
<li>Rm Read from main mem for $0200-$BFFF; Use OUT C002 to enable
|
||||
<li>Rx Read from aux mem for $0200-$BFFF; Use OUT C003 to enable
|
||||
<li>Wm Write to main mem for $0200-$BFFF; Use OUT C004 to enable
|
||||
<li>Wx Write to aux mem for $0200-$BFFF; Use OUT C005 to enable
|
||||
</ul>
|
||||
<li>0C: $C00C - Col40/80 (inverse indicates state of 80COL)
|
||||
<li>0E: $C00E - ASC/MOUS (inverse indicates state of ALTCHARSET)
|
||||
<li>80: $C080-C087: B2/M R/W (Language Card Bank2)
|
||||
<ul>
|
||||
<li>A red 'x' if ALTZP (and Alt Language Card) is set by a write to $C009.
|
||||
</ul>
|
||||
<li>88: $C088-C08F: B1/M rNN (Language Card Bank1 and RamWorks 64K bank number)
|
||||
<ul>
|
||||
<li>'B2' or 'B1' is inverse when that LC bank is enabled.
|
||||
<li>If 'M' is inverse: ROM is active for reading.
|
||||
<li>If 'M' is not inverse: LC2 or LC1 RAM is active.
|
||||
<li>If 'W' is inverse: RAM is write enabled.
|
||||
<li>If 'W' is not inverse: RAM is write protected.
|
||||
<li>'rNN' will appear if a RamWorks 64K bank is active.
|
||||
<li>'sNN' will appear if a Saturn 16K bank is active.
|
||||
</ul>
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
<p style="MARGIN-BOTTOM: 0in"><br>
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
|
@ -1,243 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>AppleWin Debugger Tutorial</title>
|
||||
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body style="DIRECTION: ltr" lang="en-US">
|
||||
<h2><a name="Scrolling"></a>Scrolling</h2>
|
||||
<p>In the disassembly view, the following keys & commands can be used:<br>
|
||||
(The classic Apple "monitor " disassemble command is also suported.)
|
||||
</p>
|
||||
<table border="0" cellpadding="2" cellspacing="0" width="75%">
|
||||
<COLGROUP>
|
||||
<col width="64">
|
||||
<col width="192">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#ffffff"><b>Command</b></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p style="FONT-STYLE: normal"><font color="#ffffff"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b>U ####</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>Start disassembly from Value or Address</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b>####L</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>List (unassemble) from specified address.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><br>
|
||||
<br>
|
||||
</p>
|
||||
<table border="1" cellpadding="2" cellspacing="0" width="75%">
|
||||
<COLGROUP>
|
||||
<col width="26">
|
||||
<col width="64">
|
||||
<col width="166">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="10%">
|
||||
<p><font color="#ffffff"><b>Key</b></font></p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p><font color="#ffffff"><b>Name</b></font></p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><font color="#ffffff"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p><font face="Wingdings">á</font>
|
||||
</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Up Arrow</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Scroll up one mnemonic line.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p><font face="Wingdings">â</font>
|
||||
</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Down Arrow</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Scroll down one mnemonic line.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p><font face="Wingdings">ñá</font>
|
||||
</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Shift Up Arrow</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Scroll up 1 byte.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p><font face="Wingdings">ñâ</font>
|
||||
</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Shift-Down Arrow</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Scroll down 1 byte.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>PgUp
|
||||
</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Page Up
|
||||
</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Scroll up one screen.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>PgDn
|
||||
</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Page Down
|
||||
</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Scroll down one screen.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p><font face="Wingdings">ñ</font>PgUp
|
||||
</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Shift-Page Up
|
||||
</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Jump to prev. page boundary (256 byte).</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p><font face="Wingdings">ñ</font>PgDn
|
||||
</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p><a name="Registers"></a>Shift-Page Down
|
||||
</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Jump to next page boundary (256 byte).</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>^PgUp
|
||||
</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Control-Page Up
|
||||
</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Jump to prev. 4K boundary (4096 bytes).</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>^PgDn
|
||||
</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Control-Page Down</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Jump to next 4K boundary (4096 bytes).</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>Home
|
||||
</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Home</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Jump to start of memory ($0000).</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>End
|
||||
</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>End</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Jump to middle of memory ($8000).</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p><font face="Wingdings">à</font>
|
||||
</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Right Arrow
|
||||
</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Locate current 6502 instruction.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p><font face="Wingdings">à</font><font size="4">|</font></p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Tab
|
||||
</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Locate current 6502 instruction.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<h2>
|
||||
<br>
|
||||
</h2>
|
||||
</body>
|
||||
</html>
|
|
@ -1,295 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>AppleWin Debugger Tutorial</title>
|
||||
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body style="DIRECTION: ltr" lang="en-US">
|
||||
<h2><a name="Symbols"></a>Symbols</h2>
|
||||
<p>
|
||||
When a programmer writes an assembly language program instead of directly referring to a memory address over and over again they use a <b>symbolic name</b> instead.
|
||||
For example, instead of always directly hard-coding $C000 everywhere to read the keyboard they would instead write:
|
||||
</p>
|
||||
<p><font color="#00b8ff"><font face="courier"><b><pre style="background: rgb(0,0,0) 0% 50%;">
|
||||
ORG $300
|
||||
KEYBOARD EQU $C000
|
||||
300:AD 00 C0 .1 LDA KEYBOARD
|
||||
303:10 FB BPL .1
|
||||
305:8D 00 04 STA $0400
|
||||
306:60 RTS
|
||||
</pre></b></font></font></p>
|
||||
<p>
|
||||
Let's try this out in the debugger. Make sure AppleWin is running. Press F2 (to reboot), then Ctrl-F2 (to break), and F7 (to enter the debugger.)
|
||||
If you don't want to type in the following hex code, you can select it, copy it (Ctrl-C), and paste it into the Debugger console (Ctrl-V).
|
||||
</p>
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><pre style="BACKGROUND: rgb(0,0,0) 0% 50%;">
|
||||
300:AD 00 C0 10 FB 8D 00 04 60
|
||||
300L
|
||||
</pre></b></font></font></p>
|
||||
<p>
|
||||
Press F7 to exit the debugger, then type:
|
||||
</p>
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><pre style="BACKGROUND: rgb(0,0,0) 0% 50%;">
|
||||
HOME:CALL 768
|
||||
</pre></b></font></font></p>
|
||||
<p>
|
||||
Press Enter. The emulated computer will wait for your to press a key and then echo it in the top left.
|
||||
</p>
|
||||
<p>
|
||||
When debugging assembly programs since you typically don't have the source file availabe you can tell the debugger how to interpret a memory address as a variable name or symbol.
|
||||
A <b>symbol</b> is the symbolic name and the address assigned to it.
|
||||
</p>
|
||||
<p>AppleWin supports loading of the assemblers ACME, and Merlin's symbol tables -- a collection of symbols, one per line, organized and collectively called a symbol table.
|
||||
The semi-colon is a comment-till-end-of-line. The file format per line is: <b>ADDRESS SYMBOL</b></p>
|
||||
<p>e.g.</p>
|
||||
<p><font color="#00b8ff"><font face="courier"><b><pre style="background: rgb(0,0,0) 0% 50%;">
|
||||
; IO Map
|
||||
C000 KEYBOARD
|
||||
</pre></b></font></font></p>
|
||||
<p>
|
||||
There are <b>9</b> symbol tables to help organize "modules"; each symbol table individually can be turned off/on independently.
|
||||
<pre>
|
||||
MAIN APPLE2E.SYM
|
||||
BASIC A2_BASIC.SYM
|
||||
ASM A2_ASM.SYM
|
||||
User1 A2_USER1.SYM
|
||||
User2 A2_USER2.SYM
|
||||
Src1 A2_SRC1.SYM
|
||||
Src2 A2_SRC2.SYM
|
||||
DOS33 A2_DOS33.SYM
|
||||
PRODOS A2_PRODOS.SYM
|
||||
</pre></p>
|
||||
<p>On startup the debugger reads 3 symbol tables by default: Main, Basic, User1.</p>
|
||||
</p>
|
||||
<p>Looking up symbols is easy. If you can't remember an address of a symbol,
|
||||
or the reversse -- can't remember the symbol for an address -- you can use the following symbol commands:
|
||||
(#### referes to either a hex address or a symbolic name)
|
||||
</p>
|
||||
<p><br>
|
||||
<br>
|
||||
</p>
|
||||
<table border="0" cellpadding="2" cellspacing="0" width="80%">
|
||||
<COLGROUP>
|
||||
<col width="64">
|
||||
<col width="192">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#ffffff"><b>Command</b></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p style="FONT-STYLE: normal"><font color="#ffffff"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; ">SYM</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; ">Display
|
||||
the number of symbols in the Main, User, and Source symbol tables.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; ">SYM
|
||||
####</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; ">Look-up
|
||||
the Symbol or Address, and display which Symbol Table it is in.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; ">SYMUSER
|
||||
LOAD</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; ">Reloads
|
||||
the User Symbol Table: <b>A2_USER1.SYM</b></span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; ">SYMUSER
|
||||
CLEAR</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%;">Clears
|
||||
the User Symbol Table from RAM.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; ">SYMMAIN
|
||||
####</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; ">Look-up
|
||||
only in the Main symbol table.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; ">SYMUSER
|
||||
####</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; ">Look-up
|
||||
only in the User symbol table.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; ">SYMSRC
|
||||
####</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; ">Look-up
|
||||
only in the Source symbol table.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; ">SYM
|
||||
name = ####</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; ">Add
|
||||
(or update) a symbol in the User table with the new Address.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; ">SYM
|
||||
! name</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; ">Remove
|
||||
a symbol from the User table.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; ">MEB
|
||||
symbol ##</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>Set memory (at the symbol Address) to the 8-Bit (byte) Value.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b>MEW symbol ####</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>Set memory (at the symbol Address) to the 16-Bit (word) Value.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b>E16 symbol ####</b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>Alias for EW.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><br>
|
||||
<br>
|
||||
</p>
|
||||
<p><font size="4"><b>Examples</b>:</font></p>
|
||||
<table bgcolor="#000000" border="0" cellpadding="2" cellspacing="0" width="799">
|
||||
<COLGROUP>
|
||||
<col width="276">
|
||||
<col width="515">
|
||||
<tbody>
|
||||
<tr bgcolor="#00b8ff">
|
||||
<td bgcolor="#30c0ff" width="276">
|
||||
<p><font color="#000000"><b>Input</b></font></p>
|
||||
</td>
|
||||
<td bgcolor="#30c0ff" width="515">
|
||||
<p><font color="#000000"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="276">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b>SYM</b></font></font></p>
|
||||
</td>
|
||||
<td width="515">
|
||||
<p><font color="#ffffff"><i>Displays number of symbols in the Main, User, and Source
|
||||
tables.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="276">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b>SYMMAIN CLEAR</b></font></font></p>
|
||||
</td>
|
||||
<td width="515">
|
||||
<p><font color="#ffffff"><i>Clears the main symbol table!!</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="276">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b>SYMMAIN LOAD APPLE2E.SYM</b></font></font></p>
|
||||
</td>
|
||||
<td width="515">
|
||||
<p><font color="#ffffff"><i>Reloads the main symbol table.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="276">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b>SYM FA62</b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="515">
|
||||
<p><font color="#ffffff"><i>Look up the Address $<b><font color="#ffff00">FA62</font></b> (RESET).</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="276">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%; ">SYM
|
||||
HOME</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="515">
|
||||
<p><font color="#ffffff"><i>Look up the Symbol Home ($<b><font color="#ffff00">FC58</font></b>).</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="276">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%;">SYM
|
||||
LIFE = 300</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="515">
|
||||
<p><font color="#ffffff"><i>Define a new user symbol, called “Life” at Address $0300.</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="276">
|
||||
<p><font color="#00b8ff"><font face="Courier"><b><span style="BACKGROUND: rgb(0,0,0) 0% 50%;">MEB
|
||||
LIFE 64</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="515">
|
||||
<p><font color="#ffffff"><i>Set 8-Bit variable (@ $<b><font color="#ffff00">0300</font></b>)“Life”
|
||||
to 100 (decimal).</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="276">
|
||||
<p><font color="#00b8ff"><font face="courier"><b><span style="background: rgb(0,0,0) 0% 50%; ">MEW
|
||||
LIFE 3E8</span></b></font></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="515">
|
||||
<p><font color="#ffffff"><i>Set 16-Bit variable (@ $<b><font color="#ffff00">0300</font></b>)“Life”
|
||||
to $3E8 = 1000 (decimal).</i></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p>
|
||||
<br>
|
||||
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
|
@ -1,55 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<HTML>
|
||||
<HEAD>
|
||||
<title>AppleWin Debugger Tutorial</title>
|
||||
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=windows-1252">
|
||||
</HEAD>
|
||||
<body style="DIRECTION: ltr" lang="en-US">
|
||||
<H1>AppleWin Debugger Tutorial</H1>
|
||||
<P><FONT size="4"><i>By Michael Pohoreski.</i></FONT></P>
|
||||
<P><FONT size="3">Revision 3. Mar 12, 2006.</FONT></P>
|
||||
<H2>Table of Contents</H2>
|
||||
<UL>
|
||||
<LI><A href="#Introduction">Introduction</A>
|
||||
<LI><A href="dbg-entering-debugger.html">Entering and exiting the Debugger</A>
|
||||
<LI><A href="dbg-screen-layout.html">Debugger Screen Layout</A>
|
||||
<LI><A href="dbg-scrolling.html">Scrolling</A>
|
||||
<LI><A href="dbg-registers.html">Registers</A>
|
||||
<LI><A href="dbg-flags.html">Flags</A>
|
||||
<LI><A href="dbg-execution.html">Execution</A>
|
||||
<LI><A href="dbg-memory.html">Memory</A>
|
||||
<UL>
|
||||
<LI><A href="dbg-memory.html#Memory_View">Viewing Memory</A>
|
||||
<LI><A href="dbg-memory.html#Memory_Search">Searching Memory</A>
|
||||
<LI><A href="dbg-memory.html#Memory_Change">Changing Memory</A>
|
||||
</UL>
|
||||
<LI><A href="dbg-symbols.html">Symbols</A>
|
||||
<LI><A href="dbg-calculator.html">Calculator</A>
|
||||
<LI><A href="dbg-windows.html">Windows</A>
|
||||
<LI><A href="dbg-breakpoints.html">Breakpoints</A>
|
||||
<LI><A href="dbg-bookmarks.html">Bookmarks</A>
|
||||
<LI><A href="dbg-configuration.html">Configuration</A>
|
||||
<UL>
|
||||
<LI><A href="dbg-configuration.html#Colors">Colors</A>
|
||||
<LI><A href="dbg-configuration.html#Fonts">Fonts</A>
|
||||
<LI><A href="dbg-configuration.html#Scripts">Scripts</A>
|
||||
<LI><A href="dbg-configuration.html#Settings">Settings</A>
|
||||
</UL>
|
||||
</LI>
|
||||
</UL>
|
||||
|
||||
<H2> </H2>
|
||||
<H2><a name="Introduction">Introduction</a></H2>
|
||||
<p>If you're new to the debugger, this tutorial will gently get you up to speed in
|
||||
becoming familiar with it.</p>
|
||||
<p>If you're already familiar with the AppleWin Debugger, you'll be aware that it
|
||||
was probably lacking in features and ease of use. The new debugger has
|
||||
been given an over-haul for the new millennium with respect to aesthetics and
|
||||
functionality. As such, you'll probably want to read this tutorial to
|
||||
learn about the new features that will not only help you in debugging, but also
|
||||
save you time.</p>
|
||||
<p>Let's get started on the tour!
|
||||
<br>
|
||||
</p>
|
||||
</body>
|
||||
</HTML>
|
|
@ -1,140 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>AppleWin Debugger Tutorial</title>
|
||||
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body style="DIRECTION: ltr" lang="en-US">
|
||||
<h2><a name="Windows"></a>Windows</h2>
|
||||
<p>Due to the amount of information available, the debugger now features
|
||||
"windows". You can switch to the full screen console to read the help, or
|
||||
to the data window to view memory.</p>
|
||||
<p><br>
|
||||
<br>
|
||||
</p>
|
||||
<table border="0" cellpadding="2" cellspacing="0" width="75%">
|
||||
<COLGROUP>
|
||||
<col width="64">
|
||||
<col width="192">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td bgcolor="#000000" width="25%">
|
||||
<p><font color="#ffffff"><b>Command</b></font></p>
|
||||
</td>
|
||||
<td bgcolor="#000000" width="75%">
|
||||
<p style="FONT-STYLE: normal"><font color="#ffffff"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">WIN
|
||||
CONSOLE</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>Switch to the full screen console. Scrolling keys work.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CONSOLE</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Alias</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">WIN
|
||||
CODE</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i>Switch to the disassembly window.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">CODE</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Alias</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#999999">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">WIN
|
||||
DATA</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Switch
|
||||
to the Data window to view memory. Most scrolling keys work.</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#cccccc">
|
||||
<td width="25%">
|
||||
<p><font color="#000000"><font face="Courier"><b><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">DATA</span></b></font></font></p>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<p><i><span style="BACKGROUND: 0% 50%; moz-background-clip: initial; moz-background-origin: initial; moz-background-inline-policy: initial">Alias</span></i></p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p>Key operations related to the debugger window:</p>
|
||||
<table border="1" cellpadding="2" cellspacing="0" width="75%">
|
||||
<COLGROUP>
|
||||
<col width="26">
|
||||
<col width="64">
|
||||
<col width="166">
|
||||
<tbody>
|
||||
<tr bgcolor="#000000">
|
||||
<td width="10%">
|
||||
<p><font color="#ffffff"><b>Key</b></font></p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p><font color="#ffffff"><b>Name</b></font></p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><font color="#ffffff"><b>Effect</b></font></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p><b>^<font face="Wingdings">à</font></b></p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Ctrl-Tab</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Cycle to next Window.</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>^<font face="Wingdings">ñà</font></p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Ctrl-Shift-Tab</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Cycle to prev. Window</i></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<p>^PrtScr</p>
|
||||
</td>
|
||||
<td width="25%">
|
||||
<p>Ctrl-PrintScreen</p>
|
||||
</td>
|
||||
<td width="65%">
|
||||
<p><i>Copy debugger disassembly window (CODE or DATA) to the clipboard.</i></p><p><b>Note:</b> It does NOT copy the console window.</p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p style="MARGIN-BOTTOM: 0in">
|
||||
<br>
|
||||
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
|
@ -1,55 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
<title>Copy Protected Disks</title>
|
||||
|
||||
|
||||
</head>
|
||||
|
||||
|
||||
<body style="background-color: rgb(255, 255, 255); font-family: verdana;" alink="#008000" link="#008000" vlink="#008000">
|
||||
|
||||
<h2><font color="#008000">Copy Protected Disks</font></h2>
|
||||
|
||||
<hr size="4">
|
||||
<p>The process of transferring disk images is complicated by the fact
|
||||
that much of the software published for the Apple II was copy protected.</p>
|
||||
|
||||
<p>Software publishers have
|
||||
always looked for
|
||||
ways to prevent people from making unauthorized copies of their
|
||||
software. Today, when you buy a game, it might ask you for a word
|
||||
from a random page of the manual, to ensure that you have
|
||||
purchased the game (complete with manual) and not just copied the
|
||||
disk. Back in the days of the Apple II, publishers were much more
|
||||
direct: they simply tried to make it physically impossible to
|
||||
copy the disk. </p>
|
||||
|
||||
<p>Unlike the PC, the Apple II
|
||||
had to perform
|
||||
much of its disk encoding in software. If programmers wanted to
|
||||
get tricky, they could bypass the operating system and do their
|
||||
own encoding, possibly changing the size of the sectors on the
|
||||
disk or the way in which the sectors were identified or stored.
|
||||
This prevented standard operating systems like DOS, along with
|
||||
their standard copying utilities, from accessing the disk. </p>
|
||||
|
||||
<p>However, programs which were
|
||||
copy protected
|
||||
in this manner could still be copied with more sophisticated
|
||||
"nibble copiers", which copied each track on the disk
|
||||
bit for bit, rather than copying a sector at a time. Similarly,
|
||||
to get a program like this to run under AppleWin, all you need to
|
||||
do is make a nibble image of the disk. </p>
|
||||
|
||||
<p>After nibble copiers became
|
||||
prevalent on
|
||||
the Apple, some software publishers developed tricky new ways of
|
||||
creating disks that even nibble copiers could not copy. Such a
|
||||
disk can only be transferred onto a WOZ disk image using the
|
||||
AppleSauce hardware & software. </p>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -1,72 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
<title>Creating Disk Images</title>
|
||||
|
||||
|
||||
</head>
|
||||
|
||||
|
||||
<body style="background-color: rgb(255, 255, 255); font-family: verdana;" alink="#008000" link="#008000" vlink="#008000">
|
||||
|
||||
<h2><font color="#008000">Creating
|
||||
Disk Images</font></h2>
|
||||
|
||||
<hr size="4">
|
||||
<p>To create a new disk image,
|
||||
all you have to do is tell AppleWin to use an image file which doesn't
|
||||
already exist and the emulator will automatically create a new image
|
||||
file. Specifying a new disk image is like inserting a blank,
|
||||
unformatted floppy disk into a real drive. This means that
|
||||
the image must be formatted by emulator before it can be used.
|
||||
Specifically, this is what you'd do using DOS 3.3:</p>
|
||||
|
||||
<ol>
|
||||
|
||||
<li>Load a master DOS 3.3 disk
|
||||
image in drive 1 and boot the emulated Apple. </li>
|
||||
|
||||
<li>Click on the Drive 1
|
||||
toolbar button. </li>
|
||||
|
||||
<li>Instead of selecting a disk
|
||||
image from the list, type in a name for a new disk image and press
|
||||
enter. </li>
|
||||
|
||||
<li>Type in a program that you
|
||||
want DOS to run whenever this new disk is booted. A simple but useful
|
||||
program is:<br>
|
||||
|
||||
<br>
|
||||
|
||||
<span style="font-family: Courier New,Courier,monospace;">10
|
||||
PRINT
|
||||
CHR$(4);"CATALOG"</span><font face="Courier New"><br>
|
||||
|
||||
</font><br>
|
||||
|
||||
</li>
|
||||
|
||||
<li>Type <span style="font-family: Courier New,Courier,monospace;">"INIT
|
||||
HELLO"</span> to initialize (format) the disk image. </li>
|
||||
|
||||
</ol>
|
||||
|
||||
<p>You now have a working disk
|
||||
image, which you can use to save documents or other information. If you
|
||||
want to fill this image with data from a real floppy disk that you
|
||||
have, then you need to "transfer" the disk's data. See the <a href="ddi-transfer.html">Transferring
|
||||
Disk Images</a> topic for more information. </p>
|
||||
|
||||
<p>Please note that not all disk image types supported by
|
||||
AppleWin can be created in this manner. Since there is no way
|
||||
to detect the image type from the image itself, it is determined by the
|
||||
given file extension only. Four extensions are allowed: (.DSK, .DO,
|
||||
.NIB, .WOZ). The first two create a "DOS Order Image", .NIB creates
|
||||
a "Nibble Image" and .WOZ creates an empty .WOZ image. If the extension is completely omitted,
|
||||
".DSK" will be chosen by default. For more information, see <a href="ddi-formats.html">Disk Image Formats</a>.</p>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -1,94 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
<title>Disk Image Formats</title>
|
||||
|
||||
|
||||
</head>
|
||||
|
||||
|
||||
<body style="background-color: rgb(255, 255, 255); font-family: verdana;" alink="#008000" link="#008000" vlink="#008000">
|
||||
|
||||
<h2><font color="#008000" face="Arial">Disk
|
||||
Image Formats</font></h2>
|
||||
|
||||
<hr size="4">
|
||||
<p>Disk images can be in a number
|
||||
of different
|
||||
formats, depending on how they were created.</p>
|
||||
|
||||
<p style="font-weight: bold;">DOS Order Images:</p>
|
||||
|
||||
<p>DOS order disk images contain the data from
|
||||
each sector, stored in the same order that DOS 3.3 numbers
|
||||
sectors. If you run a DOS program on the Apple which reads in
|
||||
sectors one by one and then transfers them over a serial line to
|
||||
the PC, you will get a DOS order disk image. </p>
|
||||
|
||||
<p>Apple floppy disks contained 35 tracks with
|
||||
16 sectors per track, for a total of 560 sectors. Each of these
|
||||
sectors contained 256 bytes of information, for a total of
|
||||
143,360 bytes per disk. Therefore, DOS order disk images are
|
||||
always at least 143,360 bytes long. Sometimes on the Internet you
|
||||
will see a disk image that is 143,488 or 143,616 bytes long; this
|
||||
is probably a DOS order image with extra header information
|
||||
before or after the image. In most cases, AppleWin can
|
||||
automatically detect this and handle it. </p>
|
||||
|
||||
<p style="font-weight: bold;">ProDOS Order
|
||||
Images: </p>
|
||||
|
||||
<p>ProDOS order disk images are very similar
|
||||
to DOS order images, except that they contain the sectors in the
|
||||
order that ProDOS numbers them. If you compress a disk with
|
||||
Shrinkit on an Apple, then transfer it over a modem and
|
||||
uncompress it on the PC, you will get a ProDOS order disk image. </p>
|
||||
|
||||
<p>Since ProDOS order disk images contain the
|
||||
same information as DOS order disk images, simply in a different
|
||||
order, they are also about 143,360 bytes long. When you use a
|
||||
disk image of this size, AppleWin attempts to automatically
|
||||
detect whether it is in DOS order or ProDOS order by examining
|
||||
the contents of the disk. If the disk was formatted with a
|
||||
standard operating system such as DOS or ProDOS, AppleWin will
|
||||
successfully detect the format. Otherwise, it will revert to DOS
|
||||
order, which is by far the most common format. To force ProDOS
|
||||
order, give the file an extension of ".PO". </p>
|
||||
|
||||
<p style="font-weight: bold;">Nibble Images:</p>
|
||||
|
||||
<p>Nibble images contain all of the data on a
|
||||
disk; not just the data in sectors but also the sector headers
|
||||
and synchronization areas, all stored in the same encoded format
|
||||
that would be recorded on a real disk's surface. At 232,960
|
||||
bytes, nibble images are bigger than other images, but they can
|
||||
be useful for making images of copy protected software. </p>
|
||||
|
||||
<p style="font-weight: bold;">2mg Images:</p>
|
||||
|
||||
<p>2mg (or 2img) images are a wrapper around DOS, ProDOS or Nibble images.
|
||||
They contain extra meta-data describing for example, DOS volume number and
|
||||
write-protection.
|
||||
</p>
|
||||
|
||||
<p style="font-weight: bold;">WOZ Images:</p>
|
||||
|
||||
<p>The WOZ Disk Image format is an offshoot of the <A href="https://applesaucefdc.com/woz">Applesauce project</A>. Capturing highly accurate bit data is of no use if you don't have a container to hold the data. The WOZ format was designed to be able to contain every possible Apple ][ disk structure and layout. It can be so accurate that even copy protected software can't tell that it isn't an original disk.
|
||||
</p>
|
||||
|
||||
<p style="font-weight: bold;">Compressed Images :</p>
|
||||
|
||||
<p>All of the above can optionally be either gzip'ed or zipped. If a zip archive
|
||||
contains multiple files, then AppleWin only supports using the first file. For best results
|
||||
with hard disk images, uncompress first, as writing back to the image requires a full
|
||||
image re-compression after every block write. Examples of typical extensions are:
|
||||
<ul>
|
||||
<li>.gz, .dsk.gz, .nib.gz, .2mg.gz, .woz.gz</li>
|
||||
<li>.zip, .dsk.zip, .nib.zip, .2mg.zip, .woz.zip</li>
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -1,55 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
<title>Hard Disk Images</title>
|
||||
|
||||
|
||||
</head>
|
||||
|
||||
|
||||
<body style="background-color: rgb(255, 255, 255); font-family: verdana;" alink="#008000" link="#008000" vlink="#008000">
|
||||
|
||||
<h2 style="color: rgb(0, 128, 0);">Hard Disk Images</h2>
|
||||
|
||||
<hr size="4">
|
||||
<p style="font-weight: bold;">Overview:</p>
|
||||
|
||||
<p>A hard disk controller (or interface) card can be plugged in to slot 7 via the AppleWin Configuration tab labelled Disk.
|
||||
Just check <span style="font-style: italic;">Enable hard disk controller in slot 7</span>.</p>
|
||||
|
||||
<p>There is provision to connect two hard disks to this card.
|
||||
This is done by using .hdv or 800KB .2mg files on your PC.
|
||||
Each hard disk can have a maximum capacity of 32MB.</p>
|
||||
NB. The hard disk controller supports both fixed-disk types (up to 32MB) and 3.5" floppy types (800KB).
|
||||
|
||||
<p>On booting, the Apple will <span style="text-decoration: underline;">always</span>
|
||||
attempt to
|
||||
autoboot from slot 7 first. If the hard disk card is unplugged (not
|
||||
enabled) then
|
||||
the Apple will then attempt to boot from slot 6 (with the Disk][
|
||||
interface card in it).</p>
|
||||
|
||||
<p>To boot a floppy disk with the hard disk card enabled, either hold down the Open-Apple key during an Apple II restart or
|
||||
issue PR#6 from an AppleSoft prompt.</p>
|
||||
|
||||
<p style="font-weight: bold;">Warnings:</p>
|
||||
|
||||
<ul>
|
||||
|
||||
<li>Unchecking <span style="font-style: italic;">Enable hard disk controller in slot 7</span> whilst the Apple is running will
|
||||
physically unplugging the hard disk card. This can lead to a corrupt
|
||||
.hdv image if the Apple is writing to the hard disk when it is unplugged!</li>
|
||||
|
||||
<li>Equally, exiting AppleWin
|
||||
can have the same affect.</li>
|
||||
|
||||
<li>Copy][+ v7.1 locks up when
|
||||
trying to calculate how many free blocks are available when running a
|
||||
catalog. This is a bug in Copy][+ which is fixed in later versions.</li>
|
||||
|
||||
</ul>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -1,53 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
|
||||
|
||||
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
|
||||
|
||||
<title>Introduction to Disk Images</title>
|
||||
</head>
|
||||
|
||||
|
||||
<body style="background-color: rgb(255, 255, 255); font-family: verdana;" alink="#008000" link="#008000" vlink="#008000">
|
||||
|
||||
|
||||
<h2 style="color: rgb(0, 128, 0);">Introduction
|
||||
to Disk
|
||||
Images</h2>
|
||||
|
||||
|
||||
<hr size="4">
|
||||
<p>Everyone who once used an
|
||||
Apple II and now
|
||||
uses an IBM-compatible PC has the same problem: How can you
|
||||
make
|
||||
the PC read Apple floppy disks? Unfortunately, without special
|
||||
hardware, you can't. </p>
|
||||
|
||||
|
||||
<p>Floppy disks are analog
|
||||
devices, much like
|
||||
cassette tapes. For a computer to store digital data on a floppy
|
||||
disk, it must "encode" the data into an analog format.
|
||||
The Apple II used a method of encoding called Group Code
|
||||
Recording (GCR), while IBM-compatible PC's use the much more
|
||||
standard Modified Frequency Modulation (MFM) encoding. Since this
|
||||
is all done in hardware and cannot be bypassed, it is not
|
||||
possible for a PC program to "reprogram" the floppy
|
||||
drive in such a way that it could read Apple-formatted floppy diskettes. </p>
|
||||
|
||||
|
||||
<p>Therefore, instead of reading
|
||||
and writing
|
||||
disks directly, AppleWin uses disk images. A disk image is a
|
||||
single file, which you can store on your hard drive or on a PC
|
||||
floppy diskette, which contains all of the data from an entire Apple
|
||||
diskette. AppleWin treats an image exactly as if it were a real
|
||||
floppy disk. </p>
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -1,68 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
<title>Loading Disk Images</title>
|
||||
|
||||
|
||||
</head>
|
||||
|
||||
|
||||
<body style="background-color: rgb(255, 255, 255); font-family: verdana;" alink="#008000" link="#008000" vlink="#008000">
|
||||
|
||||
<h2 style="color: rgb(0, 128, 0);">Loading
|
||||
Disk Images</h2>
|
||||
|
||||
<hr size="4">
|
||||
<p>AppleWin registers<sub style="FONT-WEIGHT: bold">1</sub> the
|
||||
following file types as "Disk
|
||||
Images": *.do, *.dsk, *.nib, *.po and *.woz. Double-clicking
|
||||
a disk image in Windows Explorer will automatically load and boot
|
||||
the disk.
|
||||
While older versions of
|
||||
AppleWin started a new
|
||||
instance of the emulator for every disk started in this manner, current
|
||||
versions
|
||||
of the emulator will simply replace the current disk (and reboot) if there is an
|
||||
instance of
|
||||
the emulator already running.</p>
|
||||
|
||||
<p>You may also drag and drop a
|
||||
disk image from an Explorer
|
||||
window to the AppleWin emulator window to load and boot the
|
||||
disk. Dropping the image exactly on one of the drive buttons
|
||||
will insert
|
||||
it only into this drive
|
||||
without booting. For
|
||||
example: drop "Pascal1.dsk" to drive 1 and "Pascal2.dsk" to
|
||||
drive 2, then click the the Run button to bring up UCSD Pascal.</p>
|
||||
|
||||
<p>AppleWin now allows you to
|
||||
open a disk as read-only.
|
||||
To do this, click the checkbox for "Open as Read Only" in the Select
|
||||
Disk Image dialog. This works like the physical
|
||||
write-protection mechanism on a real Apple //e floppy disk.</p>
|
||||
|
||||
<p>If a Disk Image name is too
|
||||
long to read in the Toolbar,
|
||||
simply pause the mouse cursor over a drive button to get a
|
||||
tool-tip with the full name.</p>
|
||||
|
||||
<p>Under the vertical Toolbar, are 2 LEDs, one for each floppy disk drive. The colors indicate drive status:
|
||||
<li>Black: drive is off
|
||||
<li>Green: drive is reading
|
||||
<li>Red: drive is writing
|
||||
<li>Orange: drive is reading (and floppy is write-protected)
|
||||
</p>
|
||||
|
||||
<p>By default the Disk II Controller card has the 16-sector firmware (as used by DOS 3.3 and ProDOS). But if a WOZ image that internally identifies as 13-sector format (eg. DOS 3.2) is put into drive 1, then from the start-up/logo screen (or the next reset), the Disk II Controller card's firmware will automatically be switched to the old 13-sector firmware, allowing the disk to boot. And it will automatically switch back if a non-13-sector WOZ (or any non-WOZ) image is put into drive 1 and the machine is reset.<br>
|
||||
NB. There is no support for this feature for non-WOZ images.
|
||||
</p>
|
||||
|
||||
<p><sub style="FONT-WEIGHT: bold">1</sub> To register the file types in Windows Vista, Windows 7 and Windows 10,
|
||||
you will need to run AppleWin with elevated privileges. This only needs to be done once.
|
||||
Right click the AppleWin.exe icon and select 'Run as Administrator'.</p>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -1,113 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
<title>Transferring Disk Images</title>
|
||||
|
||||
|
||||
</head>
|
||||
|
||||
|
||||
<body style="background-color: rgb(255, 255, 255); font-family: verdana;" alink="#008000" link="#008000" vlink="#008000">
|
||||
|
||||
<h2 style="color: rgb(0, 128, 0);">Transferring
|
||||
Disk Images</h2>
|
||||
|
||||
<hr size="4">
|
||||
<p style="font-weight: bold;">Serial Line Transfers:</p>
|
||||
|
||||
<p>The most common method of transferring disk
|
||||
images is through a serial line. To do this, you must connect
|
||||
your Apple to your PC with a serial line and null modem, then run
|
||||
one program on the Apple which reads data off the disk and sends
|
||||
it out over the serial line, and another program on the PC which
|
||||
collects data from the serial line and saves it to a disk image
|
||||
file. This system can be difficult to set up initially, but once
|
||||
it is working it is very fast and convenient.</p>
|
||||
<p>
|
||||
Common programs for doing this work are ADT and ADTPro:</p>
|
||||
<ul>
|
||||
<li>Apple Disk Transfer (ADT) - <a target="_blank" href="https://github.com/david-schmidt/adt">https://github.com/david-schmidt/adt</a>
|
||||
- runs natively on Windows, but is limited to transferring 5-1/4" disks.</li>
|
||||
<li>Apple Disk Transfer ProDOS (ADTPro) - <a target="_blank" href="http://adtpro.sourceforge.net/connectionsserial.html">http://adtpro.sourceforge.net/connectionsserial.html</a>
|
||||
- requires Java, but is capable of transferring all disk types and sizes.</li>
|
||||
</ul>
|
||||
|
||||
<p style="font-weight: bold;">Audio Transfers:</p>
|
||||
Apples with audio (cassette) jacks can transfer disk images
|
||||
via those ports through audio jacks on a PC.
|
||||
This method is considerably slower than using a serial line,
|
||||
but may be used if
|
||||
the Apple in question lacks a serial port, for example.
|
||||
Common programs for doing this work are ADTPro and Arme Leute Apple Disk Transfer:</p>
|
||||
<ul>
|
||||
<li>Apple Disk Transfer ProDOS (ADTPro) - <a target="_blank" href="http://adtpro.sourceforge.net/connectionsaudio.html">http://adtpro.sourceforge.net/connectionsaudio.html</a>
|
||||
<li>Arme Leute Apple Disk Transfer (Poor Man's ADT) - <a target="_blank" href="http://seb.riot.org/appleII/aladt.sml">http://seb.riot.org/appleII/aladt.sml</a>
|
||||
</ul>
|
||||
|
||||
|
||||
<p style="font-weight: bold;">Ethernet Transfers:</p>
|
||||
Apples with an <a href="http://a2retrosystems.com/">A2RetroSystems</a>' Uthernet
|
||||
card can transfer disk images via ADTPro:
|
||||
<ul>
|
||||
<li>Apple Disk Transfer ProDOS (ADTPro) - <a target="_blank" href="http://adtpro.sourceforge.net/configethernet.html">http://adtpro.sourceforge.net/configethernet.html</a>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
<p style="font-weight: bold;">Modem Transfers:</p>
|
||||
|
||||
<p>If you have a modem and
|
||||
terminal program on
|
||||
both your Apple and PC, you can take advantage of that to
|
||||
transfer disks with very little initial setup. Here's what you
|
||||
do:</p>
|
||||
|
||||
<ol>
|
||||
|
||||
<li>Run ShrinkIt! on the Apple
|
||||
to compress a disk image into a single archive file.</li>
|
||||
|
||||
<li>Transfer that file over the
|
||||
modem to your PC.</li>
|
||||
|
||||
<li>Run Nulib on the PC to
|
||||
uncompress the archive file. Nulib is available from
|
||||
<a target="_blank" href="ftp://public.asimov.net/pub/apple_II/utility/nulib">ftp://public.asimov.net/pub/apple_II/utility/nulib</a>.</li>
|
||||
|
||||
</ol>
|
||||
|
||||
<p style="font-weight: bold;">Transferring
|
||||
Through 3.5"
|
||||
Disks:</p>
|
||||
|
||||
<p>One final way to transfer disk
|
||||
images is to
|
||||
copy the data onto a 3.5" disk, and then use a Macintosh to
|
||||
transfer the data from the 3.5" disk into a PC readable
|
||||
format. The advantage of this method is that it does not require
|
||||
a serial card or modem. However, it does involve a number of
|
||||
steps:</p>
|
||||
|
||||
<ol>
|
||||
|
||||
<li>Run dsk2file on an Apple
|
||||
IIgs. This will read an entire 5 1/4" disk and save it as a single file
|
||||
on a 3.5" ProDOS disk.</li>
|
||||
|
||||
<li>Take the 3.5" disk to a
|
||||
Macintosh and copy the file using Apple File Exchange or the ProDOS
|
||||
File System Extension.</li>
|
||||
|
||||
<li>Format a high density 3.5"
|
||||
disk on a PC.</li>
|
||||
|
||||
<li>Take this 3.5" disk to the
|
||||
Macintosh and write the image file to it using Apple File Exchange or
|
||||
PC Exchange.</li>
|
||||
|
||||
</ol>
|
||||
|
||||
</body>
|
||||
</html>
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue