易码技术论坛

 找回密码
 加入易码
搜索
查看: 220370|回复: 2

[求助]6502汇编怎么写呢?

[复制链接]
发表于 2006-4-9 08:17:00 | 显示全部楼层
指令
发表于 2006-5-21 19:09:00 | 显示全部楼层
;显示文件夹下的文件列表,不用修改
INT: .MACRO INT_PARAM
.DB $00
.DW INT_PARAM
.ENDM
.ORG $4000
.DB $AE,$EE,$EA,$00,$20,$00,$20
JMP SFMain1
.DB $D0,$07,$30,$03,$FF,$FF
SFMainL16: .DB "===== 菜单选项 ====="
.DB "用方向键或换页键切换"
.DB "要选择的项目,用< 输"
.DB "入 >键来确认选择。"
.DB $00,$00
SFMainL36:
.DB $07
SFMainL37:
.DB $0D,$18,$0D,$29,$0D,$3A,$0D,$4B,$0D
.DB $EE,$A0,$0A,$AD,$A0,$0A,$CD,$03,$0D,$90,$0A,$A9,$01
.DB $8D,$A0,$0A,$A9,$00,$8D,$9F,$0A,$A9,$8D,$85,$C7,$60
SFMain1:
        LDA #$00
STA $0A9F
STA $0AA0
SFMain2:
        TSX
STX $0D02
TXA
PHA
LDA #$00
LDX #$09
SFMainL1:
        STA $0388 ,X
DEX
BNE SFMainL1
LDA $0388
AND #$3F
STA $0388
PLA
TAX
JSR SFMainL2
JSR SFMainL3
LDA #$07
STA $D1
LDA #$0D
STA $D2
LDA #<SFMainL4
STA $D3
LDA #>SFMainL4
STA $D4
LDX #<SFMainL5
LDY #>SFMainL5
LDA $0D03
JSR SFMainL6
JMP SFMainL7
SFMainL2:
        JSR SFMainL8
LDA $0D04
BEQ SFMainL9
LDA #$FF
STA $0D03
LDA #$00
STA $0D04
SFMainL9:
        LDA $0D03
BEQ SFMainL7
SEC
LDA $0AA0
SBC $0A9F
BCS SFMainL10
LDA $0AA0
STA $0A9F
JMP SFMainL11
SFMainL10:
        CMP #$05
BCC SFMainL11
LDA $0AA0
SEC
SBC #$04
STA $0A9F
SFMainL11:
        SEC
LDA $0D03
SBC #$01
CMP $0A9F
BCS SFMainL12
STA $0A9F
SFMainL12:
        CMP $0AA0
BCS SFMainL13
STA $0AA0
SFMainL13:
        RTS
SFMainL3:  
        LDA $0A9F
STA $80
LDA #$00
STA $81
JSR SFMainL14
BCS SFMainL7
RTS
SFMainL7:
        LDX $0D02
TXS
CLC
RTS
SFMainL4:
        LDA $0AA0
STA $80
LDA #$00
STA $81
JSR SFMainL15
LDX $0D02
TXS
SEC
RTS
SFMainL5:
        .DB $80,<SFMainL16,>SFMainL16,<SFMainL3,>SFMainL3,<SFMainL3,>SFMainL3,<SFMainL3,>SFMainL3,<SFMainL3,>SFMainL3
LDA $0D05
STA $093F
LDA $0D06
STA $0940
LDA #$C0
STA $0949
INT $0519
INT $051A
LDX #$02
LDA $091D ,X
AND #$10
BEQ SFMainL17
LDX $0D02
TXS
JMP SFMain1
SFMainL17:
        RTS
SFMainL8:
        LDA #$00
STA $0D03
LDA #$00
STA $0D04
LDA #$01
STA $0D00
JMP SFMainL18
SFMainL15:
        LDA #$80
STA $0D00
JMP SFMainL18
SFMainL14:
        LDA #$00
STA $0D00
SFMainL18:
        LDA $0A
PHA
LDA $0A
AND #$F0
ORA #$01
STA $0A
LDA $80
STA $094E
LDA $81
STA $094F
LDA #$00
STA $0D01
LDA $091B
STA $093F
LDA $091C
STA $0940
LDA #$C0
STA $0949
INT $0519
BCC SFMainL19
JMP SFMainL20
SFMainL19:
        INT $051A
BCC SFMainL21
JMP SFMainL20
SFMainL21:
        LDX #$12
LDA $091D ,X
STA $0941
LDA $091E ,X
STA $0942
LDA #$00
STA $0961
LDA #$00
STA $0962
LDA $094E
STA $CC09
LDA $094F
STA $CC0A
LDA #$00
STA $CC0B
LDA #$00
STA $CC0C
SFMainL45:
        LDA #$56
STA $E7
LDA #$C8
STA $E8
LDA #$56
STA $DF
LDA #$C8
STA $E0
INT $0506
BCC SFMainL22
JMP SFMainL20
SFMainL22:
        LDA #$00
STA $03F6
LDY #$00
LDA ($DF) ,Y
STA $093F
INY
LDA ($DF) ,Y
STA $0940
LDA $0940
CMP #$FF
BNE SFMainL23
LDA $093F
CMP #$FF
SFMainL23:
        BNE SFMainL24
JMP SFMainL26
SFMainL24:
        LDA $0940
CMP #$00             ;检测是否是系统文件,文件号为0001
BNE SFMainL25
LDA $093F
CMP #$01
SFMainL25:
        BEQ SFMainL27
INT $051F
BCS SFMainL27
LDA $0D00
CMP #$01
BNE SFMainL28
INC $0D03
BNE SFMainL29
INC $0D04
SFMainL29:
        JMP SFMainL30
SFMainL28:
        LDA $CC0C
CMP $CC0A
BNE SFMainL31
LDA $CC0B
CMP $CC09
SFMainL31:
        BEQ SFMainL32
INC $CC0B
BNE SFMainL27
INC $CC0C
SFMainL27:
        JMP SFMainL30
SFMainL32:
        LDY #$02
LDA ($DF) ,Y
CMP #$FF
BNE SFMainL33
LDA #$2E
STA ($DF) ,Y
INY
STA ($DF) ,Y
INY
LDA #$00
STA ($DF) ,Y
SFMainL33:
        BIT $0D00
BPL SFMainL34
JMP SFMainL35
SFMainL34:
        LDA $0D01
ASL
TAX
LDA SFMainL36 ,X
STA $82
LDA SFMainL37 ,X
STA $83
SEC
LDA $82
SBC #$02
STA $82
BCS SFMainL38
DEC $83
SFMainL38:
        LDY #$02
SFMainL40:
LDA ($DF) ,Y
STA ($82) ,Y
BEQ SFMainL39
INY
CPY #$10
BCC SFMainL40
SFMainL39:
LDA #$20
SFMainL41:
STA ($82) ,Y
INY
CPY #$12
BCC SFMainL41
LDA #$00
STA ($82) ,Y
INY
STA ($82) ,Y
INC $0D01
LDA $0D01
CMP #$05
BCS SFMainL26
SFMainL30:
CLC
LDA $DF
ADC #$10
STA $DF
BCC SFMainL42
INC $E0
SFMainL42:
LDA $E0
CMP #$CA
BNE SFMainL84
LDA $DF
CMP #$56
SFMainL84:
BCS SFMainL43
JMP SFMainL22
SFMainL43:
CLC
LDA $0961
ADC #$00
STA $0961
LDA $0962
ADC #$02
STA $0962
LDA $0962
CMP #$40
BNE SFMainL44
LDA $0961
CMP #$00
SFMainL44:
BCS SFMainL26
JMP SFMainL45
SFMainL35:
LDY #$00
LDA ($DF) ,Y
STA $0D05
INY
LDA ($DF) ,Y
STA $0D06
INY
LDX #$00
SFMainL46:
LDA ($DF) ,Y
STA $08D6 ,X
INX
INY
CPY #$10
BCC SFMainL46
LDA #$00
STA $08E4
SFMainL26:
CLC
JMP SFMainL47
SFMainL20:
SEC
SFMainL47:
PLA
STA $0A
RTS
SFMainL6:
STX $A8
STY $A9
STA $0616
TSX
STX $061C
SFMainL52:
LDA $0616
BNE SFMainL48
JMP SFMainL49
SFMainL48:
JSR SFMainL50
JSR SFMainL51
JMP SFMainL52
SFMainL50:
INT $C72A
JSR SFMainL53
LDY #$00
LDX #$00
SFMainL55:
LDA ($D1) ,Y
STA $02C0 ,X
BEQ SFMainL54
INX
INY
JMP SFMainL55
SFMainL54:
JSR SFMainL56
INY
LDA ($D1) ,Y
BNE SFMainL55
LDA $0AA0
SEC
SBC $0A9F
TAY
LDX #$00
INT $C71D
LDA #$FF
STA $03AF
LDA #$FF
STA $03B0
INT $C719
RTS
SFMainL56:
TXA
LDX #$00
SFMainL59:
CMP SFMainL57 ,X
BCC SFMainL58
INX
JMP SFMainL59
SFMainL58:
LDA SFMainL57 ,X
TAX
RTS
SFMainL57:
.DB $14,$28,$3C,$50,$64
SFMainL53:
LDA #$FF
STA $03B5
LDA #$00
STA $83
LDA $0AA0
STA $82
LDA #$00
STA $81
LDX $0616
DEX
STX $80
INT $C72C
RTS
SFMainL51:
INT $C00A
TAX
LDY #$0B
LDA #<SFMainL60
STA $80
LDA #>SFMainL60
STA $81
JSR $E060
RTS
SFMainL60:
.DB $0D,$20,$1D,$14,$17,$15,$16,$13,$0E,$19,$1B
.DB <SFMainL61,>SFMainL61
.DB <SFMainL62,>SFMainL62
.DB <SFMainL63,>SFMainL63
.DB <SFMainL64,>SFMainL64
.DB <SFMainL64,>SFMainL64
.DB <SFMainL65,>SFMainL65
.DB <SFMainL65,>SFMainL65
.DB <SFMainL66,>SFMainL66
.DB <SFMainL67,>SFMainL67
.DB <SFMainL68,>SFMainL68
.DB <SFMainL49,>SFMainL49
SFMainL49:
LDX $061C
TXS
RTS
SFMainL61:
LDY #$00
LDA ($A8) ,Y
STA $0619
LDA $0619
AND #$80
BNE SFMainL69
JSR $E015
RTS
SFMainL69:
LDA $D3
STA $8A
LDA $D4
STA $8B
LDA $0AA0
SEC
SBC $0A9F
TAY
SFMainL72:
LDA $0AA0
PHA
LDA $0A9F
PHA
LDA $0616
PHA
LDA $A8
PHA
LDA $A9
PHA
JSR SFMainL70
PLA
STA $A9
PLA
STA $A8
PLA
STA $0616
PLA
STA $0A9F
PLA
STA $0AA0
RTS
SFMainL70:
JMP ($008A)
SFMainL62:
LDY #$00
LDA ($A8) ,Y
STA $0619
LDA $0619
AND #$40
BNE SFMainL71
JSR $E015
RTS
SFMainL71:
LDA $D5
STA $8A
LDA $D6
STA $8B
LDA $0AA0
SEC
SBC $0A9F
TAY
JMP SFMainL72
SFMainL63:
LDY #$00
LDA ($A8) ,Y
STA $0619
LDA $0619
AND #$20
BNE SFMainL73
SFMainL74:
JSR $E015
RTS
SFMainL73:
LDA $D9
STA $8A
LDA $DA
STA $8B
LDA $0AA0
SEC
SBC $0A9F
TAY
JMP SFMainL72
SFMainL64:
LDA $0AA0
BEQ SFMainL74
LDA $0A9F
CMP $0AA0
BEQ SFMainL75
DEC $0AA0
RTS
SFMainL75:
DEC $0A9F
DEC $0AA0
LDY #$05
LDA ($A8) ,Y
STA $8A
INY
LDA ($A8) ,Y
STA $8B
JSR SFMainL72
RTS
SFMainL65:
LDA $0AA0
CLC
ADC #$01
CMP $0616
BCC SFMainL76
JMP SFMainL74
SFMainL76:
LDA $0A9F
CLC
ADC #$04
CMP $0AA0
BEQ SFMainL77
INC $0AA0
RTS
SFMainL77:
INC $0A9F
INC $0AA0
LDY #$03
LDA ($A8) ,Y
STA $8A
INY
LDA ($A8) ,Y
STA $8B
JSR SFMainL72
RTS
SFMainL66:
LDA $0A9F
BNE SFMainL78
JMP SFMainL74
SFMainL78:
CMP #$05
BCC SFMainL79
LDA $0A9F
SBC #$05
STA $0A9F
LDA $0AA0
SEC
SBC #$05
STA $0AA0
SFMainL80:
LDY #$09
LDA ($A8) ,Y
STA $8A
INY
LDA ($A8) ,Y
STA $8B
JSR SFMainL72
RTS
SFMainL79:
LDA $0AA0
SEC
SBC $0A9F
STA $0AA0
LDA #$00
STA $0A9F
JMP SFMainL80
SFMainL67:
LDA $0A9F
CLC
ADC #$05
CMP $0616
BCC SFMainL81
JMP SFMainL74
SFMainL81:
STA $0A9F
LDA $0AA0
CLC
ADC #$05
CMP $0616
BCC SFMainL82
LDA $0616
STA $0AA0
DEC $0AA0
JMP SFMainL83
SFMainL82:
STA $0AA0
SFMainL83:
LDY #$07
LDA ($A8) ,Y
STA $8A
INY
LDA ($A8) ,Y
STA $8B
JSR SFMainL72
RTS
SFMainL68:
LDY #$01
LDA ($A8) ,Y
STA $A6
INY
LDA ($A8) ,Y
STA $A7
LDA $D1
PHA
LDA $D2
PHA
INT $CB09
PLA
STA $D2
PLA
STA $D1
RTS
 楼主| 发表于 2006-3-4 14:54:57 | 显示全部楼层 |阅读模式
我想学6502,看了许多的资料,想自己写一写程序,但是那个6502的格式不知道 资料里面的例子我复制到6502的汇编器里,总是错误!

大家帮帮忙!

给我说说,这个格式是怎么样的,是写机器码还是指令呢?

最好举个例子啊!

谢谢啊!
您需要登录后才可以回帖 登录 | 加入易码

本版积分规则

Archiver|手机版|小黑屋|EMAX Studio

GMT+8, 2024-3-29 01:38 , Processed in 0.009016 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表