由播客/导弹播客赞助的Atari 8位二进制编辑器。
omnivore的Python项目详细描述
===
杂食
==
摘要
=
>杂食-由播客/导弹播客赞助的Atari 8位二进制编辑器
在制作播客/导弹播客时,我对破解8位代码有很多想法id.我拥有的工具之一是cdy consulting的
omnimon系统监控板,这是atari
800的一个附加板,它提供了一个rom常驻监控器,类似于apple][series上的
default所提供的。事实上,我最初将这个程序命名为omnimon,但我觉得这太令人困惑了,因为在8位社区中仍有人使用原始的omnimon硬件。使用前缀"omni-"是我对omnimon硬件的所有乐趣的致敬。
omnivore是一个跨平台的应用程序,用于现代硬件(运行linux、os x和
windows)处理atari 8位机的可执行文件或磁盘映像。(i
具有长期目标,支持编辑其他8位机器(如c64和apple)的主rom和磁盘图像。[.)
omnivore不仅仅是一个atari二进制编辑器。它还可以使用基于字符的图形平铺创建和编辑地图。例如:许多游戏使用5色的背投模式4或5来提供复杂的滚动背景,而使用的内存比多色的位图模式要少得多。-导弹图形形状。
How to Run Omnivore
==
rmissile.com/omnivore/>;``或者直接通过'github
发布<;https://github.com/robmcmullen/omnivore/releases>;``页面。
linux的二进制文件目前不可用,尽管我希望在某个时候为ubuntu、linux mint和gentoo提供包。要在linux上运行
,必须从源代码安装它。这没那么复杂;
除了wxpython之外,任何东西都可以从使用pip的"python包"中安装。
是或
改进,您可以安装并运行源发行版。
如果您运行的是Linux(像我一样!),我建议您设置一个python
虚拟环境,其中包含您需要的所有依赖项,而不是将系统的python弄乱。
wxpython站点上的mg
<;http://wxpython.org/download.php\osxdefault>;`,并使用python 2.7的"framework
安装<;http s://www.python.org/downloads/mac osx/>;`,而不是
系统的python。
al
致力于杂食性开发的机器,并在该虚拟机中安装系统中的所有内容
python。
扩展,在大多数linux和os x上应该是自动的。你可能需要在linux发行版上安装python开发包,比如ubuntu或linux mint。
windows没有c编译器,但是很高兴的是,微软提供了一个其visual只用于编译python
扩展的studio编译器!从
`here<;https://www.microsoft.com/en-us/download/details.aspx下载并安装?id=44266>;`.
virtualenv安装程序--*仅限Linux*
--------
首先:下载"wxpython 3.0.2.0<;http://downloads.sourceforge.net/wxpython/wxpython-src-3.0.2.0.tar.bz2>;``源代码。
接下来,安装虚拟环境::
er表示动态库
被正确发现。您可以通过一个简单的多行shell来实现这一点:命令:
cat<;eof>>gt;$virtual-env/bin/activate
ld-libra库路径:$virtual-env/lib:$ld-libra库路径
export ld-libra库路径
eof
wxpythonvvvirtual/bin/activate
wxpython--*linux-linux-wxpython是的/>——————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————8
使安装程序
cd wxpython
python setup.py install
---------------------------
*os x:`下载包安装程序<;http://wxpython.org/download.php osxdefault>;`
*windows:`下载并运行安装程序http://wxpython.org/download.php msw>;`
安装Omnivore--*类Unix平台*
——您系统上的包,可以通过Linux上的包管理器或其他平台上的"Git主页"获取。
<;https://git scm.com/downloads>;``在
因为我使用了unix shell脚本,这在windows上是行不通的。在我修复这个问题之前,您可以从"github releases"页面查看源代码分发版,该页面捆绑了所有完整的源代码。
Enthough库需要一个C模块,而Omnivore有几个用于图形加速的cython模块,您可以使用以下命令从主源目录运行程序:
$python run.py
development
==
一些时间关键型代码(如
重新绘制所有字符图形),但只有在
要调试或重新编译那些特定的.pyx文件时才需要它。破解python代码不需要cython
。
gins
----
omnivore通过插件进行扩展。插件是基于"热情框架"的,使用setuptools插件发现的。我打算制作一些示例插件来提供一些示例,以防其他人希望为Omnivore提供更多功能。
abbed用户界面和
是用python编写和扩展的。它是围绕emacs
主要模式的概念构建的——根据编辑的数据类型,不同的视图呈现给用户。
(注意
尽管enthough已经主要转向qt作为受支持的gui
工具包,但我已经派生了enthough的代码,并用更好的wxpython
支持对其进行了扩展。只有wxpython支持作为杂食动物的gui后端。我试图将补丁提交给enthough,但他们对wx的进一步支持并不感兴趣。体系结构的目标是提供一个低耦合的系统,以减少用新的主要模式、次要模式和边栏扩展编辑器所需的工作量。
为什么要重写原来的peppy_u编辑器?
…_ peppy:http://peppy.flipturn.org
***简化代码。**
peppy可以在任何窗口中使用任何主模式,但这需要大量代码来支持小模式在选项卡更改时的切换。
我让它正常工作,但代码相当复杂。杂食
只允许在窗口中使用类似的主模式,而不同的主模式需要
一个新窗口。这不是一个巨大的不便,但节省了大量的
编码,所以我对这种折衷很满意。它能让我尽可能多地使用热情的任务框架。
***使其他人更容易做出贡献。**
peppy使用的是我自己的框架,它有一个陡峭的学习曲线。
希望通过转到热情的框架,它会有更广泛的吸引力。
**利用其他人的代码。**
为我当时需要的东西定制代码,但现在
有类似的包,其他人支持和维护。例如,
我编写了一个虚拟文件系统实现,它工作正常,但本身就是一个完整的
项目。在接下来的几年里,pyfilesystem被编写出来,不再需要我使用自己的代码。_ pyfilesystem:http://packages.python.org/fs/index.html
由自由软件基金会发布的GNU通用公共许可条款;许可证的第3版,或任何更高版本(由您选择)。
目的明确。有关详细信息,请参阅GNU通用公共许可证。
T(C)2006-2014,Enthough,Inc.
保留所有权利。
aimer.
*以二进制形式重新分发必须复制上述版权声明,
此条件列表和文档中的以下免责声明
和/或随分发提供的其他材料。
*Enthough,Inc.的名称或其贡献者的名称均不得用于支持或推广ProduCTS来源于未经
事先书面许可,本软件由版权所有人和贡献者"按原样"和
提供任何明示或默示保证,包括但不限于对特定产品的适销性和适用性的默示保证。rpose是不允许的。在任何情况下,版权所有人或贡献者均不对任何直接、间接、附带、特殊、惩戒性或后果性损害承担责任r导致并在
任何责任理论,无论是在合同中,严格责任或侵权
(包括疏忽或其他)产生的任何方式使用本
软件,即使被告知此类损害的可能性。
杂食
==
摘要
=
>杂食-由播客/导弹播客赞助的Atari 8位二进制编辑器
在制作播客/导弹播客时,我对破解8位代码有很多想法id.我拥有的工具之一是cdy consulting的
omnimon系统监控板,这是atari
800的一个附加板,它提供了一个rom常驻监控器,类似于apple][series上的
default所提供的。事实上,我最初将这个程序命名为omnimon,但我觉得这太令人困惑了,因为在8位社区中仍有人使用原始的omnimon硬件。使用前缀"omni-"是我对omnimon硬件的所有乐趣的致敬。
omnivore是一个跨平台的应用程序,用于现代硬件(运行linux、os x和
windows)处理atari 8位机的可执行文件或磁盘映像。(i
具有长期目标,支持编辑其他8位机器(如c64和apple)的主rom和磁盘图像。[.)
omnivore不仅仅是一个atari二进制编辑器。它还可以使用基于字符的图形平铺创建和编辑地图。例如:许多游戏使用5色的背投模式4或5来提供复杂的滚动背景,而使用的内存比多色的位图模式要少得多。-导弹图形形状。
How to Run Omnivore
==
rmissile.com/omnivore/>;``或者直接通过'github
发布<;https://github.com/robmcmullen/omnivore/releases>;``页面。
linux的二进制文件目前不可用,尽管我希望在某个时候为ubuntu、linux mint和gentoo提供包。要在linux上运行
,必须从源代码安装它。这没那么复杂;
除了wxpython之外,任何东西都可以从使用pip的"python包"中安装。
是或
改进,您可以安装并运行源发行版。
如果您运行的是Linux(像我一样!),我建议您设置一个python
虚拟环境,其中包含您需要的所有依赖项,而不是将系统的python弄乱。
wxpython站点上的mg
<;http://wxpython.org/download.php\osxdefault>;`,并使用python 2.7的"framework
安装<;http s://www.python.org/downloads/mac osx/>;`,而不是
系统的python。
al
致力于杂食性开发的机器,并在该虚拟机中安装系统中的所有内容
python。
扩展,在大多数linux和os x上应该是自动的。你可能需要在linux发行版上安装python开发包,比如ubuntu或linux mint。
windows没有c编译器,但是很高兴的是,微软提供了一个其visual只用于编译python
扩展的studio编译器!从
`here<;https://www.microsoft.com/en-us/download/details.aspx下载并安装?id=44266>;`.
virtualenv安装程序--*仅限Linux*
--------
首先:下载"wxpython 3.0.2.0<;http://downloads.sourceforge.net/wxpython/wxpython-src-3.0.2.0.tar.bz2>;``源代码。
接下来,安装虚拟环境::
er表示动态库
被正确发现。您可以通过一个简单的多行shell来实现这一点:命令:
cat<;eof>>gt;$virtual-env/bin/activate
ld-libra库路径:$virtual-env/lib:$ld-libra库路径
export ld-libra库路径
eof
wxpythonvvvirtual/bin/activate
wxpython--*linux-linux-wxpython是的/>——————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————8
使安装程序
cd wxpython
python setup.py install
*os x:`下载包安装程序<;http://wxpython.org/download.php osxdefault>;`
*windows:`下载并运行安装程序http://wxpython.org/download.php msw>;`
安装Omnivore--*类Unix平台*
——您系统上的包,可以通过Linux上的包管理器或其他平台上的"Git主页"获取。
<;https://git scm.com/downloads>;``在
因为我使用了unix shell脚本,这在windows上是行不通的。在我修复这个问题之前,您可以从"github releases"页面查看源代码分发版,该页面捆绑了所有完整的源代码。
Enthough库需要一个C模块,而Omnivore有几个用于图形加速的cython模块,您可以使用以下命令从主源目录运行程序:
$python run.py
development
==
一些时间关键型代码(如
重新绘制所有字符图形),但只有在
要调试或重新编译那些特定的.pyx文件时才需要它。破解python代码不需要cython
。
gins
----
omnivore通过插件进行扩展。插件是基于"热情框架"的,使用setuptools插件发现的。我打算制作一些示例插件来提供一些示例,以防其他人希望为Omnivore提供更多功能。
abbed用户界面和
是用python编写和扩展的。它是围绕emacs
主要模式的概念构建的——根据编辑的数据类型,不同的视图呈现给用户。
(注意
尽管enthough已经主要转向qt作为受支持的gui
工具包,但我已经派生了enthough的代码,并用更好的wxpython
支持对其进行了扩展。只有wxpython支持作为杂食动物的gui后端。我试图将补丁提交给enthough,但他们对wx的进一步支持并不感兴趣。体系结构的目标是提供一个低耦合的系统,以减少用新的主要模式、次要模式和边栏扩展编辑器所需的工作量。
为什么要重写原来的peppy_u编辑器?
…_ peppy:http://peppy.flipturn.org
***简化代码。**
peppy可以在任何窗口中使用任何主模式,但这需要大量代码来支持小模式在选项卡更改时的切换。
我让它正常工作,但代码相当复杂。杂食
只允许在窗口中使用类似的主模式,而不同的主模式需要
一个新窗口。这不是一个巨大的不便,但节省了大量的
编码,所以我对这种折衷很满意。它能让我尽可能多地使用热情的任务框架。
***使其他人更容易做出贡献。**
peppy使用的是我自己的框架,它有一个陡峭的学习曲线。
希望通过转到热情的框架,它会有更广泛的吸引力。
**利用其他人的代码。**
为我当时需要的东西定制代码,但现在
有类似的包,其他人支持和维护。例如,
我编写了一个虚拟文件系统实现,它工作正常,但本身就是一个完整的
项目。在接下来的几年里,pyfilesystem被编写出来,不再需要我使用自己的代码。_ pyfilesystem:http://packages.python.org/fs/index.html
由自由软件基金会发布的GNU通用公共许可条款;许可证的第3版,或任何更高版本(由您选择)。
目的明确。有关详细信息,请参阅GNU通用公共许可证。
T(C)2006-2014,Enthough,Inc.
保留所有权利。
aimer.
*以二进制形式重新分发必须复制上述版权声明,
此条件列表和文档中的以下免责声明
和/或随分发提供的其他材料。
*Enthough,Inc.的名称或其贡献者的名称均不得用于支持或推广ProduCTS来源于未经
事先书面许可,本软件由版权所有人和贡献者"按原样"和
提供任何明示或默示保证,包括但不限于对特定产品的适销性和适用性的默示保证。rpose是不允许的。在任何情况下,版权所有人或贡献者均不对任何直接、间接、附带、特殊、惩戒性或后果性损害承担责任r导致并在
任何责任理论,无论是在合同中,严格责任或侵权
(包括疏忽或其他)产生的任何方式使用本
软件,即使被告知此类损害的可能性。