基本上我必须创建一个迷宫并将其存储在一个文本文件中,以便我可以稍后打开它,我已经创建了迷宫部分,但是我生命中的我无法保存它屏幕上显示文本文件的所有内容(即使是空格)我知道我可以使用int 21h将文件写入文件我只是不知道如何将所有内容写入所述文本文件(整个订单屏幕上显示订单中的80行和25列)。
public interface IAbilityScore : IBaseEntity
{
string Name { get; set; }
}
public interface IBonus<T,K> where T : IBonusable<K>
{
K Value { get; set; }
}
public interface IBonusable<T>
{
T Value { get; set; }
}
public interface ICharacterAbilityScore : IBaseEntity, IBonusable<int>
{
ICharacter Character { get; set; }
IAbilityScore AbilityScore { get; set; }
bool IsSaveProficient { get; set; }
}
我使用MASM和dosBOX。
答案 0 :(得分:0)
接下来是您的代码段和修正中的4个错误:
mov ax,0b800h
mov es,ax
xor si,si ;◄■■ INITIALIZE SI = 0.
ciclo2:
mov aL, es:[si] ;◄■■ CHARACTER IN AL.
mov aH, es:[si+1] ;◄■■ COLOR IN AH.
mov var1, ax
mov ah,40h
mov cx,2
; mov dx,var1 ;◄■■ WRONG : VARIABLE VALUE.
lea dx,var1 ;◄■■ RIGHT : VARIABLE ADDRESS.
mov bx,handle
int 21h
inc si
inc si
cmp si, 4000
jne ciclo2
fim:
当您阅读文件以显示内容时,请记住屏幕首先包含字符(mov al, es:[si]
)和后面的颜色(mov ah, es:[si+1]
),按顺序显示字节,或者您将看到屏幕上有奇怪的字符和颜色。