1 /* 1 2 * linux/arch/m68k/tools/amiga/dmesg.c -- Ret 3 * in 4 * lin 5 * 6 * © Copyright 1996 by Geert Uytterhoeven <g 7 * 8 * 9 * Usage: 10 * 11 * dmesg 12 * dmesg <CHIPMEM_END> 13 * 14 * 15 * This file is subject to the terms and cond 16 * License. See the file COPYING in the main 17 * distribution for more details. 18 */ 19 20 21 #include <stdio.h> 22 #include <stdlib.h> 23 #include <unistd.h> 24 25 26 #define CHIPMEM_START 0x00000000 27 #define CHIPMEM_END 0x00200000 /* ove 28 29 #define SAVEKMSG_MAGIC1 0x53415645 /* 'SA 30 #define SAVEKMSG_MAGIC2 0x4B4D5347 /* 'KM 31 32 struct savekmsg { 33 u_long magic1; /* SAVEKMSG_MAGIC1 */ 34 u_long magic2; /* SAVEKMSG_MAGIC2 */ 35 u_long magicptr; /* address of magic1 * 36 u_long size; 37 char data[]; 38 }; 39 40 41 int main(int argc, char *argv[]) 42 { 43 u_long start = CHIPMEM_START, end = CHIPME 44 int found = 0; 45 struct savekmsg *m = NULL; 46 47 if (argc >= 2) 48 end = strtoul(argv[1], NULL, 0); 49 printf("Searching for SAVEKMSG magic...\n" 50 for (p = start; p <= end-sizeof(struct sav 51 m = (struct savekmsg *)p; 52 if ((m->magic1 == SAVEKMSG_MAGIC1) && 53 (m->magicptr == p)) { 54 found = 1; 55 break; 56 } 57 } 58 if (!found) 59 printf("Not found\n"); 60 else { 61 printf("Found %ld bytes at 0x%08lx\n", 62 puts(">>>>>>>>>>>>>>>>>>>>"); 63 fflush(stdout); 64 write(1, &m->data, m->size); 65 fflush(stdout); 66 puts("<<<<<<<<<<<<<<<<<<<<"); 67 } 68 return(0); 69 } 70
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.