Я начал изучать сборку для DCPU-16, чтобы подготовиться к 0x10c, но по прибытии на завершение tutorial я бежал, я обнаружил, что программа wasn ' t ответ на ввод с клавиатуры. Вступая шаг за шагом, я обнаружил, что код застрял в петле, настроенной на то, чтобы процессор ожидал ввода клавиатуры.DCPU-16 не принимает ввод с клавиатуры
Оскорблять линия здесь:
IFE [0x9000 + I],0 ; if keyboard buffer is empty
SET PC,loop
Может быть потому, что код для более старой версии DCPU? Если да, то как это будет работать сейчас?
Первое сообщение о переполнении стека, если я сделал какой-либо фальшивый pas, пожалуйста, извините меня, и спасибо вам всем. Полный код:
SET A,0
SET B,0
SET C, 0xF000
SET I, 0
:loop
IFE [0x9000 + I],0 ; if keyboard buffer is empty
SET PC,loop
IFE [0x9000 + I],8
SET PC, backspace
IFE [0x9000 + I],10
SET PC, enter
SET B, [0x9000 + I]
BOR B,C
SET [0x8000+A], B
SET [0x9000 + I], 0
ADD A, 1
ADD I, 1
IFE I, 16
SET I, 0
SET PC,loop
:backspace
SUB A, 1
SET [0x8000+A],0
SET [0x9000 + I], 0
ADD I, 1
IFE I, 16
SET I, 0
SET PC,loop
:enter
AND A, 0xFFE0
ADD A, 0x0020
SET [0x9000 + I], 0
ADD I, 1
IFE I, 16
SET I, 0
SET PC,loop
Много оценил, ура! – user1398478