나는이 6502 에뮬레이터를 잠시 동안 사용 해왔다. 그리고 나는 작동하도록 간단한 Enhanced BASIC ROM을 얻고 자한다. 정확한 클럭 타이밍이 없지만 에뮬레이터는 AllSuiteA.asm을 통과했습니다. EhBASIC의 경우, 해당 주소로 읽기가 완료되면 $ F001 값을 출력하여 일부 출력을 얻을 수있었습니다.EhBASIC 입력에서 6502 에뮬레이터
그러나 입력 프로세스를 에뮬레이션하는 방법을 알지 못합니다. This post은 EhBASIC이 입력을 원할 때마다 $ F004를 폴링합니다. 하지만 내 현재 코드는 두 가지 문제가있는 것 :
while(1)
{
decodeandexecute();
if(lastread == 0xF004)
{
inputchar = getchar();
CPUMEM[0xF004] = inputchar;
}
if(lastwrite == 0xF001)
{
printf("%c",CPUMEM[0xF001]);
}
}
- 입력 개별 문자를 통해서만 가능하다을 (예상) 프로그램 후
- 는 모든 입력을 제공하는 것이 바로 독서의 루프의 원인이됩니다, 메모리 크기를 요구 $ F004 (LDA $ F004)에서 - 나는 EhBASIC가 입력 나는 문자의 문자열을 입력하고, 통과 얻기의 효과적인 방법 알고 싶어
수신을 중지 할시기를 알려 수 없습니다 즉, "메모리 크기를?" .
또한 EhBASIC에서 자동으로 메모리 크기를 계산하게하려면 $ F004에 무엇을 입력해야합니까?
I 해요 꽤 많이 난 당신이 코드에서 getchar
를 사용하고 내가 정확히 기억한다면 그 차단 호출입니다 볼이 분야에서 초보자 ....