1Possible BSVC Projects 2====================== 3 4Here is a list of possible projects that can be done with BSVC. If you're 5a brave person with some spare time or a senior who needs a project to work 6on think about one of the following. Some of these are very pratical while 7others are a little on the far side. 8 9 101. It would be nice to have the following microprocessors simulated: 11 12 * Intel 8051 13 * Intel 8086 14 * Intel 8088 15 * Motorola 68HC11 16 * Power PC 601 17 * MOS 6502 (I've got most of this written just haven't finished it :-) 18 192. More devices for example: 20 21 * Motorola 6850 UART I've got part of this written but then I found 22 out that NCSU had started using the MC68681 :-) 23 24 * Motorola 68230 Timer So we can do some multitasking ;-) 25 26 * Simple Video Card A simple device that simulates a very simple 27 video card. Sould have some wierd bit plane 28 modes so student will have to do a lot of 29 bit minipulations. 30 31 * ROM Really simple to implement. Just like RAM 32 execpt it reads in a file when it's created. 33 34 * Ethernet Adapter I'm not sure how hard this would be. 35 36 * Shared RAM On systems that support shared memory you 37 could allocate a RAM moduled that shared from 38 one simulator to the next. Then fire up two 39 simulators and let the play in the shared memory. 40 This is really out there but might be interesting 41 to play with. 42 43 * Hard disk adapter Uses a file as a hard disk image 44 453. 68000 stuff 46 47 * See how hard it would be to build GNU C as a cross compiler for the 48 M68000. Then add a Loader to the Sim68000 to load the a.out file 49 generated by gcc. 50 51 * If you get GNU C working then port XINU to the M68000. 52 534. Cache simulations 54 55 * Get GNU C to work as a cross compiler to one of the microprocessors 56 supported by BSVC. Add a Loader to the simulator to load the a.out 57 format file generated by gcc. 58 59 * Port a C library to the simulator. This should be complete enough to 60 allow some UNIX programs to be compiled and ran on the simulator. 61 62 * Subclass the AddressSpace object and implement a Cache simulator. Then 63 you can use the C programs to benchmark the cache. 64 65 * Might also want to get C++ to work then you could study the effects 66 of OO on the cache. 67 68 * You could also study GC effects on the Cache. 69 70 This would be really neat if it worked but I would suggest more 71 than one person on this project :-) 72 735. BSVC Framework 74 75 * Modify the EventHandler to accept file descriptor events, and timed 76 file descriptor events. This would eliminate the polling done in the 77 M68681 device. 78 79 * Clean up the interface class and remove some of the C code in there 80 816. Add new feature to the program listing utility 82 83 * Highlight lines were breakpoints are set 84 85 * Allow breakpoints to be set/unset 86