APPLE II/E 的内存体系结构和游戏杆控制I/O表

PC电脑 74LS138组成的游戏杆 I/O 端口是 读201h写201h

apple ii /e 游戏杆端口开关(三态输出数据选择器74LS251)
十六进制地址
游戏口选通脉冲 STB $c04X 49216~49231
AN0 关 $c058 49240
AN0 开 $c059 49241
AN1 关 $c05a 49242
AN1 开 $c05b 49243
AN2 关 $c05c 49244
AN2 开 $c05d 49245
AN3 关 $c05e 49246
AN3 开 $c05f 49247
按钮开关 SW0 $c061(or $c069) 49249
SW1 $c062(or $c06a) 49250
SW2 $c063(or $c06b) 49251
游戏杆 PDL0 $c064(or $c06c) [A]
PDL1 $c065(or $c06d) [B]
PDL2 $c066(or $c06e) [C]
PDL3 $c067(or $c06f) [D]
apple ii /e 系统内存结构分配表(简)
零页用法:
0~5 跳指令到applesoft
A~C USR()函数跳转地址
D~17 applesoft的常规国家标识
20~4F apple ii 系统的保留地址
50~61 applesoft 常规指针
62~66 上次的乘法/除法结果
67~68 程序开始点,由ROM的$801设置,或由RAM的$3001设置(磁带)
69~6A 简单变量的开始点,每次由程序加5,不能在LOMEM中手动改变结构
6B~6C 数组开始空间
6D~6E 数字记录结束点
6F~70 字串记录点。
71~72 常规指针
73~74 在applesoft里设置高内存可用,初始化是起点,完成后是结束点
75~76 当前执行行号
77~78 以前的行号,被control-C中断过的或执行中断的行号
79~7A 以前的文本指针,方便下次使用
7B~7C 当前开始读DATA的行号
7D~7E 当前读入DATA进内存的绝对地址
7F~80 当前输入口指针,由$201 INPUT 和 DATA READ使用
81~82 获得过去的使用变量名
83~84 过去使用的变量值指针
85~9C 常规说明
9D~A3 主要的浮点加法器
A4 常规的使用浮点数学环
A5~AB 第二个浮点加法器
AC~B0 常规的说明标志指针组
B1~C8 CHRGET 环,applesoft 调用后是另外字符。
B8~B9 通过CHRGET环反映的过去的字符指针
C9~CD 随机数
D0~D5 高分辨图形指针
D8~DF ONERR 指针组/搜索组
E0~E2 高分辨图形X,Y坐标
E4 高分辨图形颜色属性字节
E5~E7 常规使用高分辨图形模式
E8~E9 链表指针开始
EA 高分辨率图形的页面模式
F0-F3 常规标志
F4~F8 ONERR 指针
(00-FF 意思相近,请纠错)
0100~01FF 系统堆栈
0200~02FF 输入缓冲区(字符不能超过256)
03FE~03FF 中断向量
0400~07FF 文本/低分辨率第一页缓冲区
0800-0BFF 第二页缓冲区
2000-3FFF 高分辨率作图第一页缓冲区
4000-5FFF 高分辨率第二页缓冲区
0C00~BFFF RAM用户区
C030 喇叭
C070 计时器(558象限时间器)
C0-CF为接口区
C0 为板上接口
C1~C7为扩展插槽
C8~CF为扩展ROM
C080~C0FF 平均分给每个槽(256+16+8)
C090~C09F 为一号槽 C0A0~C0AF 为二号槽

补全保留地址部分和在applewin 调试器中的助记符号

自动启动监控程序注释
loc0 $00 ;磁盘 I/O 口向量低位暂存单元
loc1 $01 ;磁盘 I/O 口向量高位暂存单元
wndlft $20 ;屏幕窗口左极限列存贮单元
wndwdth $21 ;屏幕窗口总列数存贮单元
wndtop $22 ;屏幕窗口最高行数存贮单元
wndbtm $23 ;屏幕窗口最低行数存贮单元
ch $24 ;光标水平位置指针(列计数)
cv $25 ;光标高度指针(屏幕字符行计数)
gbasl $26 ;低分辨图形象元位置基值向量低字节
gbash $27 ;低分辨图形象元位置基值向量高字节
basl $28 ;光标位置基值向量低字节
bash $29 ;光标位置基值向量高字节
bas2l $2a ;光标基值向量低字节暂存单元
bash $2b ;光标基值向量高字节暂存单元
h2 $2c ;低分辨图形列极限暂存单元
lmmem $2c ;反汇编左助记符代码暂存单元
v2 $2d ;低分辨图形行极限暂存单元
rmnem $2d ;反汇编右助记符代码暂存单元
mask $2e ;图象元颜色屏幕字暂存单元
chksum $2e ;写,读磁带时“检查和”存贮单元
format $2e ;反汇编寻址方式代码存贮单元
lastin $2f ;检查读磁带,信号单元,平时D7=0
length $2f ;反汇编操作数字节计数存贮单元
sign $2f ;
color $30 ;低分辨图形象元颜色代码存贮单元
mode $31 ;监控键盘命令中“:",".","-","x"方式存贮单元
invflg $32 ;屏幕显示方式代码存贮单元
prompt $33 ;操作状态提示符存贮单元
ysav $34 ;变址寄存器Y暂存单元
ysav1 $35 ;变址寄存器Y暂存单元
cswl 36 ; 字 符 输 出 软 开 关 低 字 节 , 通 常 存 36 ;字符输出软开关低字节,通常存 36;f0
cswh 37 ; 字 符 输 出 软 开 关 高 字 节 , 高 常 存 37 ;字符输出软开关高字节,高常存 37;fd
kswl $38 ;字符输入子程序低字节,通常存$1b
kswh 39 ; 字 符 输 入 处 理 子 程 序 高 字 节 , 通 常 存 39 ;字符输入处理子程序高字节,通常存 39;fd
pcl $3a ;指令计数器PC低字节暂存单元
pch $3b ;指令计数器PC高字节暂存单元
a1l $3c ;操作数地址缓冲区a1低字节存贮单元
a1h $3d ;a1高字节存贮单元
a2l $3e ;操作地址缓冲区,a2低字节存贮单元
a2h $3f ;a2高字节存贮单元
a3l $40 ;操作数地址缓冲区a3
a3h $41 ;a3高字节存贮单元
a4l $42 ;操作数地址缓冲区a4
a4h $43 ;a4高字节存贮单元
a5l $44 ;操作数地址缓冲区a5
a5h $45 ;a5高字节存贮单元
acc $45 ;累加器内容暂存单元
xreg $46 ;变址寄存器X内容暂存单元
yreg $47 ;变址寄存器Y内容暂存单元
status $48 ;状态寄存器P内容暂存单元
spnt $49 ;堆栈指针S内容暂存单元
pndl $4e ;随机数产生器低字节
pndh $4f ;随机数产生器高字节
pick $95 ;ctrl/u字符代码
in $200 ;键盘输入字符缓冲区首址
brkv $3f0 ;新断点向量,在磁盘启动后置入
softev 3 f 2 ; “ 软 进 入 向 量 ” 暖 起 动 低 位 存 贮 单 元 , 软 向 量 一 般 为 3f2 ;“软进入向量”暖起动低位存贮单元,软向量一般为 3f2;e003
pwredup $3f4 ;建立“电源合上”标志字节,一般存$45
amperv $3f5 ;applesoft,入口向量
usradr $3f8 ;用户子程序向量
nmi $3fb ;不可屏蔽中断向量
irgloc $3fe ;用户设置的处理断点程序向量
line1 $400 ;屏幕显示器缓冲区首址(显示缓冲区第一页)
mslot $7f8 ;磁盘 I/O向量高字节暂存单元
oadr $c000 ;I/O设备码存贮区首址
kbd $c000 ;键盘输入I/O地址
kbdstrb $c010 ;清键盘选通I/O地址
tapeout $c020 ;磁带输出 I/O 地址
spkr $c030 ;扬声器输出 I/O 地址
txtclr $c050 ;设置屏幕为显示图形工作方式地址
txtset $c051 ;设置屏幕为显示文本工作方式地址
mixclr $c052 ;设置屏幕为显示完整图形式文本方式地址
mixset $c053 ;设置屏幕为显示文本
lowscr $c054 ;显示缓冲区第一页地址
hiscr $c055 ;显示缓冲区第二页地址
lores $c056 ;显示低分辨率图形方式设备码
hires $c057 ;显示高分辨率图形方式设备码
setan0 $c058 ;开游戏软开关an0设备码
clran0 $c059 ;关游戏软开关an0设备码
setan1 $c05a ;开游戏软开关an1设备码
clran1 $c05b ;关游戏软开关an1设备码
setan2 $c05c ;开游戏软开关an2设备码
clran2 $c05d ;关游戏软开关an2设备码
setan3 $c05e ;开游戏软开关an3设备码
clran3 $c05f ;关游戏软开关an3设备码
tapein $c060 ;7位磁带数据输入地址
paddl0 $c064 ;游戏接口电位器PDL0输入设备码
ptrig $c070 ;清除游戏电位器模拟量输入设备码
clrrom $cfff ;扩展PROM选通设备码
basic $e000 ;BASIC状态入口
basic2 $e003 ;BASIC状态入口

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值