6f4087cb6b/vm/fast-console/vm.c
| 43fd6a76ba79839cb7b101945b85dac8dd07f9aa | 6f4087cb6b11c592278ebb86b5b90cc298e3c857 | ||
|---|---|---|---|
541 | 541 | ||
542 | /* Read a char; response indicates success/failure */ | 542 | /* Read a char; response indicates success/failure */ |
543 | if (vm->ports[4] == -2) { | 543 | if (vm->ports[4] == -2) { |
544 | int cell = acc; DROP; | ||
545 | FILE *handle = (FILE *) acc; DROP; | 544 | FILE *handle = (FILE *) acc; DROP; |
546 | int c = fgetc(handle); | 545 | int c = fgetc(handle); |
547 | vm->image[cell] = c; | 546 | if ( c == EOF ) vm->ports[4] = 0; |
548 | if ( c == EOF ) vm->ports[4] = 0; | 547 | else vm->ports[4] = c; |
549 | else vm->ports[4] = -1; | ||
550 | vm->ports[0] = 1; | 548 | vm->ports[0] = 1; |
551 | } | 549 | } |
552 | 550 |
Download diff