Presentation is loading. Please wait.

Presentation is loading. Please wait.

By Danny Matthews Supervised by Dr Des Watson. “ A very precise form of simulation which enables one type of computer to operate as if it were a different.

Similar presentations


Presentation on theme: "By Danny Matthews Supervised by Dr Des Watson. “ A very precise form of simulation which enables one type of computer to operate as if it were a different."— Presentation transcript:

1 By Danny Matthews Supervised by Dr Des Watson

2 “ A very precise form of simulation which enables one type of computer to operate as if it were a different type of computer. ” - BCS NES Software NES Emulator Executes on Executed on

3 8 Bit Video Games Console Released in 1983 Hugely Successful: 60 Million Units Sold Over 1000 Released Titles Finally Discontinued in 1995: Super Nintendo - 1990 Sony Playstation – 1994 Major Player in Revitalising the Market After the Crash of 1983

4 NES Four Main Units Central Processing Unit (CPU) Picture Processing Unit (PPU) Audio Processing Unit (APU) Input Development Tools Debugger Name Table Viewer Pattern Table Viewer Implemented using Java 1.5

5 Long Time interest in Computer Emulation The NES in particular, for reasons of nostalgia Interest in the logic behind the Hardware Respect for the developers forced to work with such a constrained environment Great Extension Possibilities

6 151 Official Op-codes 13 Addressing Modes 7 Registers 7 Regions of Memory

7 Memory Mapping Uses Memory Mapping to Interact With External Hardware. Reading/Writing to Certain Locations in Memory Actually reads/writes to external memory and registers. Memory Mirroring Certain Locations in Memory "mirror" the Contents of Other Locations. Writing to a Mirrored Location Will Change the Content in All Mirroring Locations Also.

8 Reads From The NES Cartridge Reads/writes to the PPU, APU and I/O Registers Writing to $0800-$2000 Behaves identically to writing to $0000-$07FF Writing to $0800-$2000 Behaves identically to writing to $0000-$07FF

9 Renders the Generated Images to the Television Four Main Issues Colour Palettes Pattern Tables Name Tables Sprites

10 Colour Palettes 52 Possible Colours (Master Palette) Two Useable Palettes: Image Palette Sprite Palette 25 Colours on Screen at Any One Time Master Palette

11 Pattern Tables Store 8x8 Tiles 256 Tiles Per Table

12

13 Made up of 8 Tiles Made up of 4 Tiles

14 Name Tables 32 x 30 Table Each Element Stores a Reference to a Tile in one of the Pattern Tables These Tables are Used to Form the Backgrounds Name Table Contains References to Interpreted by the PPU as

15 Pattern Tables Sprites Name Tables

16 5 Sound Channels 2 Pulse Channels Triangle Channel Noise Channel Delta Modulation Channel (DMC) Mixer

17 Waveform Channels Each contain a sequence of values to be output. This sequence is stepped through at a user-defined rate (period) Until the sequence is progressed, the current sequence value is output periodically e.g. given the sequence {0,1} and a period of 5: [0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0…]

18 Pulse Channel Two Possible Voltages (0 or 1) Four Possible Duty Cycles 16 Level Volume Pitch Bending Capabilities

19 Triangle Channel 16 Possible Voltages (0-15) Fixed Volume Capable of Longer play duration than the other channels

20 Noise Channel Outputs a Pseudo-Random sequence of bits Two Modes: 93 Possible Voltages 32767 Possible Voltages 16 Level Volume

21 Delta Modulation Channel (DMC) Allows the Playback of Audio Samples From Memory Achieved Through the Use of Three Units: Memory Reader Sample Buffer Output Unit

22 Mixer Input: The Output of all 5 Sound Channels Output: An Analogue Audio Signal Pulse 1 Pulse 2 Triangle Noise DMC Mixer Analogue Signal

23 Standard Controller Movement in Four Directions Two “Action” buttons Two “Control” Buttons Movement “Control” “Action”

24 Debugger System State CPU Registers PPU Registers PPU State Breakpoint System Interrupt Points Register Value Points Step/Resume Functionality Disassembler Memory Viewer CPU Memory PPU Memory

25 Name Table Viewer Name Tables Scroll Lines Attribute Table Information Name Table Data Display Display Options

26 Pattern Table Viewer Pattern Tables Tile and Palette Information Display Options Palettes

27 GraphicalAuditory


Download ppt "By Danny Matthews Supervised by Dr Des Watson. “ A very precise form of simulation which enables one type of computer to operate as if it were a different."

Similar presentations


Ads by Google