home *** CD-ROM | disk | FTP | other *** search
- #include <osbind.h>
-
- long fixup,vec;
-
- fixit()
- {
- int *start;
- if ((*(int *)vec) == 0x4e73)
- { /* if already pointing at RTE, leave alone */
- fixup = vec;
- return;
- }
- start = (int *) 0xFC0000; /* start of ROM */
- while (*start++ != 0x4e73) /* 0x4e73 is RTE */
- ;
- /* don't worry, we'll find one SOMEWHERE in ROM */
- fixup = (long)start;
- }
-
- main()
- {
- vec = Setexc(5,-1L);
- printf("%lx\n",vec);
- Supexec(fixit);
- if (fixup != vec)
- {
- printf("Vector was not pointing at RTE!\n");
- Setexc(5,fixup);
- }
- }
-