diff options
Diffstat (limited to 'system/alpha')
-rw-r--r-- | system/alpha/console/Makefile | 5 | ||||
-rw-r--r-- | system/alpha/console/console.c | 10 |
2 files changed, 9 insertions, 6 deletions
diff --git a/system/alpha/console/Makefile b/system/alpha/console/Makefile index 6c2ee111c..4a5cba216 100644 --- a/system/alpha/console/Makefile +++ b/system/alpha/console/Makefile @@ -11,7 +11,7 @@ INCLUDEH = ../h dbmentry.o: dbmentry.s $(AS) $(INCLUDES) -nointrinsics -o $*.o $*.s -console.o: console.c +console.o: console.c $(CC) -g3 $(INCLUDES) -nointrinsics -o $*.o -c $*.c printf.o: printf.c @@ -45,5 +45,8 @@ console: console.o dbmentry.o printf.o paljtokern.c.o paljtoslave.c.o $(LD) -o console -N -T $(DBMENTRY) -non_shared \ dbmentry.o console.o printf.o paljtokern.c.o paljtoslave.c.o -lc +install: console + scp console zizzer.eecs.umich.edu:/z/m5/system/testing/binaries/console + clean: rm -f *.o console *.strip paljtokern.c paljtoslave.c diff --git a/system/alpha/console/console.c b/system/alpha/console/console.c index e8bc9bd26..d62dfdb70 100644 --- a/system/alpha/console/console.c +++ b/system/alpha/console/console.c @@ -8,8 +8,9 @@ * ******************************************/ -/* from simos */ +typedef unsigned long long uint64_t; typedef unsigned long long uint64; +typedef unsigned int uint32_t; typedef unsigned int uint32; #define CONSOLE @@ -119,7 +120,7 @@ void InitConsole(void) char GetChar() { struct AlphaAccess *k1Conf = (struct AlphaAccess *)(__MAGIC_ZONE(0, 0, MAGIC_ZONE_EV5_ALIAS)); - return 0; + return k1Conf->inputChar; } void PutChar(char c) @@ -1127,12 +1128,11 @@ CallBackDispatcher(long a0, long a1, long a2, long a3, long a4) long i; switch (a0) { case CONSCB_GETC: - break; + return GetChar(); case CONSCB_PUTS: - for(i = 0; i < a3; i++) { + for(i = 0; i < a3; i++) PutChar(*(char *)a2+i); - } return a3; case CONSCB_GETENV: |