CSEE 4840 Embedded SystemPAC XONPAC XONAdvisor: Stephen EdwardsTA: Baolin ShaoStudents: Dongwei Ge(dg2563)g(g )Bo Liang (2369)Jie Cai (jc3480)LOGOContentsOverview of the project and its objectives1Design Procedure2Experience and Lessons learned3LOGOOverview and Objective We use the VGA output of the Altera board to presentthe game’s graphics. Images will be initialized inhardware and pac-man and ghosts’ movement done insoftware. The software will also control game logic.lilllhihh“”Player willplay thegamewiththe“”keys on the PS2 keyboard. Players can also challenge the previous highest scorewhich are recorded buy the software.LOGOGame GraphicsLOGODesign ArchitectureIn the hardware part, we will design a VGA controller, audio controller, a CPU, a RAM controller and a interface ,,between the hardware and the software.Inputs from the keyboard to the video display output on the screen.the screen.LOGODesign ArchitectureDesign ProcedureHardwareComponent Type RequirementEnclosure WallSpriteDraw and Display by HardwareEnclosure WallSpriteDraw and Display by HardwareTiles Sprite Update by SoftwareScore & Record Tile/Sprite Read from SoftwarePac-Man Sprite Draw by Software & Display by SoftwareGh tSitDbSft &DilbGhostsSpriteDraw by Software & Display by SoftwareLOGOGame GraphicsDesign ProcedureAddress Discription0, 1 Pan-Man’s position2-23 Play Area24 Reserved25, 26 Ghost1’s position27, 28 Ghost2’s position29, 3031ScorePac-man Direction32, 33 RecordLOGOMemory Addresses for the Video Controller DeviceDesign ProcedureSoftwareGLiFlChtLOGOGame Logic Flow ChartDesign ProcedureSoftwareStates of the Game Area126 99 98 19 20125 100 97 18 21124 101 96 17 22123 102 95 16 23122 103 94 65 2 3 15 24121 104 93 64 1 4 14 25120 105 92 63 0 51326119 106 91 62 61 6 12 27118 107 90 66 60 7 8 9 10 11 28117 108 89 67 59 58 49 48 39 38 29116 109 88 68 69 57 50 47 40 37 30115 110 87 82 81 76 75 70 56 51 46 41 36 31114 111 86 83 80 77 74 71 55 52 45 42 35 32113112858479787372545344433433113112858479787372545344433433WALL PATH GHOST1.find the gost2 if UP==YES go to (2); if NOT go to (3)2.if UP==YES, go to (2); if NOT, go to (3)3.if RIGHT==YES, go to (2); if NOT, go to (4)4.if DOWN==YES, go to (2); if NOT, go to (5)5.if LEFT==YES, go to (2); if NOT, go to (6)LOGO6.if Now==GHOST, finish; if NOT, position--, go to (2)Experience and LessonsHardware:Hardware:At first we created the background and draw the sprites,butwhatweexpecteddidn’tshowupbecauseweforgetbutwhatweexpecteddidn tshowupbecauseweforgetabout Initialization of some RAMs in our game. EachvariableRAMweusedinthegamehastobeinitializedvariableRAMweusedinthegamehastobeinitializedthen it could be display or updated by software.LOGOExperience and LessonsSoftware:In addition, after we have successfully built the playarea, and started to focus on the software part. The mostdifficult part in the software design is that when we tryto change in the state of the tiles as the pac-man orghosts move, it is difficult to distinguish which partshould be filled and which part should be left due to t hetfthhtHthtfmovementoftheghosts.Here we usetheconceptof“connection” in graphics, which is starting from the twoghostscheckthefoursidesofthemovingghoststhenghosts,checkthefoursidesofthemovingghosts,thenexpand the checking area until it reach the real tiles thathavenoghostsinthereBythismethodwecanchangeLOGOhavenoghostsinthere.Bythismethod,wecanchangethe states of the tiles in the play area.Experience and LessonsAudioController:AudioController:Furthermore, when we decided to add some sound to thegameinordertomakeitmorevivid,wecameacrossagameinordertomakeitmorevivid,wecameacrossaproblem, we had to revise the port map to add some portsandsignalsfromtheAudioController,whichtookusalongandsignalsfromtheAudioController,whichtookusalongtime to check the ports one by one and rearranged
View Full Document