支持经典AMIGA M68K系统开发的软件包
amitools的Python项目详细描述
amitools-用于其他平台的各种amigaos工具
- 作者:christian vogelgsang
- 在GNU公共许可证v2下
简介
amitools
是python的集合(目前只有2.x版)
我编写的用于在mac os x上使用amiga os的二进制文件和文件的工具
以及所有其他支持python的类似于*nix的平台。windows可以作为
嗯,但是还没有经过测试。不过,欢迎使用修补程序。
我的工具专注于经典的AMIGA设置,即基于680x0的系统 Amiga OS 1.x-3.x在上面运行。但是,这是一个开放项目,因此您可以 也提供其他AMIGA支持。
这些工具大多是面向开发人员的,因此具有AMIGA编程背景 会很有帮助的。
先决条件
- python
2.7.x
可选套餐
- lhafile-fs版本:使用
.lha
文件扫描程序所必需的 - cython:(version>;=0.25)重建本机模块所需的
安装PIP
首先确保python包安装程序pip
:
Mac操作系统
在macos上,您可以通过多种方式安装pip:
系统python
sudo easy_install pip
MacPorts软件包管理器
在MacOS上使用MacPorts软件包管理器(此处称为pip-2.7工具):
sudo port install py27-pip
自制包管理器
brew install python
linux/ubuntu
在linux ubuntu上使用提供的包python pip
sudo apt-get install python-pip
中心
要运行pip:
curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py" python get-pip.py
带Visual Studio的Windows
- 从python.org安装最新的本地windows python 2.7.x
- 有一个针对visual studio的特别版本,它允许
要编译Python2.7模块,请执行以下操作:安装vcpython2.7
- 打开编译器的命令外壳并运行
cd C:\Python27\Scripts
pip install amitools
带有msys2的Windows
- (我在这里使用mingw gcc编译器来构建扩展)
- 在具有msys2的Windows上(如果可能,请使用x86_64版本):
- 使用EXE安装程序安装
- 初始更新使用:(首先打开shell)
pacman -Sy
pacman --needed -S bash pacman msys2-runtime
- 现在关闭shell并重新打开一个新的dev shell(
mingw-w64 win64 shell
)
pacman -Su
pacman -S mingw-w64-x86_64-python2-pip mingw-w64-x86_64-gcc git make
安装
用户的便捷方式
pip install amitools
注:- 在Linux/MacOS上,可以使用
sudo
为所有用户安装
- 需要宿主C编译器来编译扩展。
开发商
- 如果要使用amitools代码库进行黑客攻击,请遵循此路线
- 克隆git repo:amitools@git
- 确保已安装cython(version>;=0.25):
sudo easy_install pip
0
- (我在这里使用mingw gcc编译器来构建扩展)
- 在具有msys2的Windows上(如果可能,请使用x86_64版本):
- 使用EXE安装程序安装
- 初始更新使用:(首先打开shell)
pacman -Sy pacman --needed -S bash pacman msys2-runtime
- 现在关闭shell并重新打开一个新的dev shell(
mingw-w64 win64 shell
)
pacman -Su pacman -S mingw-w64-x86_64-python2-pip mingw-w64-x86_64-gcc git make
安装
用户的便捷方式
pip install amitools注:
- 在Linux/MacOS上,可以使用
sudo
为所有用户安装 - 需要宿主C编译器来编译扩展。
开发商
- 如果要使用amitools代码库进行黑客攻击,请遵循此路线
- 克隆git repo:amitools@git
- 确保已安装cython(version>;=0.25):
sudo easy_install pip0
使用python的setuptools安装工具有多种变体
- 全局安装适用于您系统的所有用户,需要根用户权限
sudo easy_install pip1
- 用户安装仅适用于您的用户,但不需要特殊权限
sudo easy_install pip2
- 开发人员设置仅将此代码链接到您的安装中,并允许 您需要更改/开发代码并立即对其进行测试。(i希望用户在此处安装)
sudo easy_install pip3
- 就地运行允许您直接从
bin
目录运行二进制文件 没有任何安装。您只需要make
来构建本机库 VAMOS的:
sudo easy_install pip4
或者如果您安装了gnu make只需使用:
sudo easy_install pip5
内容
amitools的新文档位于阅读文档
工具
vamosv)虚拟am)iga os
vamos允许您在主机上运行命令行(cli)amiga程序 vamos是一个api级的amiga操作系统仿真器,它代替exec 和dos调用有自己的实现,并将所有文件访问映射到 您的本地文件系统。
创建和修改ADF或HDF磁盘图像文件。
xdfscan
扫描目录树中的ADF或HDF磁盘图像文件并验证其内容。
使用刚性磁盘块(RDB)创建或修改磁盘图像
一个检查、剖析和构建amiga kickstart rom图像的工具 与模拟器一起使用,与软启动程序一起运行或刻录到闪存中。
Hunktool
hunktool使用amitools的hunk库加载基于hunk的amiga 二元的。目前,它的主要目的是显示 各种格式的文件。
可以加载基于hunk的二进制文件、库和对象文件。偶数 支持覆盖的二进制文件。
类型工具
这个小工具是vamos的伴侣。它能让你倾倒 有关VAMOS中使用的Amigaos的API C结构的更多信息。
fdtool
此工具读取Commodore为 它们的所有库和转储内容的格式都不同 包括VAMO中使用的代码结构。
您可以查询函数并找到它们的跳转表偏移量。
python库
hunk库
amitools.binfmt.hunk
此库允许读取amiga os loadseg()可执行的二进制文件并表示 它们在python结构中。你可以查询那里找到的所有物品, 检索代码、数据和bss段,甚至将它们重新定位到目标 地址
elf库
amitools.binfmt.elf
此库允许读取主要用于 Aros M68K.
.fd文件分析器
amitools.fd
解析Commodore提供的函数描述来描述AMIGA API
ofs和ffs文件系统工具
amitools.fs
创建或修改AMIGA的OFS和FFS文件系统结构
文件扫描仪
我写了一些扫描器在文件树中搜索 用于进一步处理的文件数据。我支持文件系统上的文件树, 在lha存档或adf/hdf磁盘映像中