My Great Project

Go To Last Post
28 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi all!

I'm newbie here, but no newbie in Hard/Soft

I made Game console which named "Digital Thresher"!!!
CPU - BlackFin BF-532 in QFP

This console emulates some popular (and no-polular too) old game consoles (i.e. NES, SEGA, SNES and other)

Quote:
CPU: ADSP-BF532 BlackFin Processor @400MHz 800MMACs
RAM: SDRAM @133MHz 32MB
Storage: MMC/SD Card
Video: 2.2" QVGA TFT LCD
Audio: MP3/WMA/MIDI Codec
Input: SEGA MD 6button Joystick

Project Page:
http://emuapparatchik.narod.ru/D...

Attachment(s): 

EMU God

Last Edited: Sat. Sep 12, 2009 - 04:05 AM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

So if you post the c source, and we port it to a 32mhz xmega, we should get performance of 400mhz/32mhz or about 1/10th? If I can get 10 frames per sec I should be happy?

Imagecraft compiler user

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

bobgardner wrote:
So if you post the c source, and we port it to a 32mhz xmega, we should get performance of 400mhz/32mhz or about 1/10th? If I can get 10 frames per sec I should be happy?

When CPU @400 MHz - only GameBoy and NES emulators works with 60 FPS (with sound)

But other emulators: SEGA MD, SNES, NEO-GEO runs with 40-50 FPS (with sound)

I overklocked CPU up to 600 MHz and all emulators runs with 60 FPS (but in very-hard games 55 FPS)

My earlyer project:
http://emu-apparatchik.narod.ru/...

In this project CPU - ARM9 @200 MHz (overcklocked too). Performance for GameBoy & NES, but not for SEGA, SNES e.t.c. !!!

So 32MHz XMega's performance not enough for emulation!!!

Don't forget, there are Instruction and Data Caches enabled (in ARM9 & BF), but XMega not have caches :(

With 10 FPS I'm not bee happy :(

As for sources, I ported opensource emulators:

GB cingb
NES FCEU 0.52
SEGA Genesis Plus 1.2
SNES Snes9x

all sources are easy to port.

P.S. sorry my bad english... :oops:

EMU God

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

All that processing power to emulate a simple 6502 running at 1.79MHz :D (though I guess that most of the resources are needed to emulate the PPU)

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

jayjay1974 wrote:
All that processing power to emulate a simple 6502 running at 1.79MHz :D (though I guess that most of the resources are needed to emulate the PPU)

Yes.

And Instruction-Time-Slice (in CPU clocks) - i.e. time of instruction execution requires also most resources.

PPU (Plane Layer + Sprite Layer + Buffering + Transfer to LCD)

APU - Wave frame emulation with precision-60Hz update.

I tryed found Microcontrollers in *QFP Package with performance >400 MHz, but no result...

Another way - to optimise emulation code (C to Assembly), will increase performance of emulator, but we'll lose portable code and it is difficult.

EMU God

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Sorry for double-registration! :oops:
I lost password & can'nt repair first profile :(

I made second edition of game console - Digital Thresher +:

Quote:
CPU: ADSP-BF533 BlackFin Processor @400MHz

RAM: SDRAM @133MHz 64MB

Storage: MMC/SD Card

Video: 2.4" QVGA OLED LCD

Audio: OGG/MP3/AAC/WMA/MIDI Codec

Input: SEGA MD 6button Joystick

Quote:

CPU ADSP-BF533SBSTZ400
RAM MT48LC32M16A2P-75:CIT:DTR
Video PPT9999-A003-06-Q
Audio VS1053B-L
PCB 123mm x 65mm

AMOLED Display 2,4" looks very nicely
64 MB SDRAM for big ROM's from NEO-GEO :)

Attachment(s): 

EMU God

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

That looks awesome, very professional. Are you going to sell them?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

ezcomp wrote:
Are you going to sell them?

I live in Russian Federation (ex. USSR). The cost of these devices very high. :cry:

Devices have rare exotic components - displays.
They are very difficult for buying. :(

Besides at us in the country all costs much, therefore only Just for fun :D

EMU God

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

EMU God

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

That display looks very, very nice :) You have a link to it?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

jayjay1974 wrote:
That display looks very, very nice :) You have a link to it?

Display datasheet

Display Driver/Controller Datasheet(last revision today)

Application note

I used AR_VDD=5V, AR_VSS= -5V (from Voltage inverter LM2662)
But I was mistaken a little, when used LM2662 - the display matrix consumes enough big current (especially when the screen all white)

Display frame rate from 30Hz up to 80 Hz (datasheet)
But it is able to overcklocking (>80 Hz)

I bought the display here

EMU God

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I followed your links and was interested enough to check what else is out there. Apparently the samsung arm mp3 players are candidates to be hacked with own firmware. I think $40 for this www.dealextreme.com/details.dx/s... is great, wonder if I can hack out the screen.
& http://mympxplayer.org/viewtopic...

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

EMU God

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Very, very cool.

For those looking for displays, I just bought one of these-
http://store.gravitech.us/2tftco...

I don't know how it compares with the display above, but it does look pretty good-
http://www.mtcnet.net/~henryvm/a...
(looks better than pictures show)

I bought this display because of the easy interface (0.1" header). Obviously a mega is not the perfect fit to drive one of these, but is does work (slowly).

I only wish I had the knowledge to do something like the board in the previous posts.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Attachment(s): 

EMU God

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Attachment(s): 

EMU God

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Nice work. I love your entusiasm for electronics.

oddbudman

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Holy smokes! Nice work!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I want to know how to pronounce your name. I think its "Three Sticks", or maybe "Three Backward ELLs"?

Imagecraft compiler user

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Thanks for "hot moral support" !!!

r_|_|_| - means:

r - Romanich

_|_|_| - meandr signal, 50% duty cycle

EMU God

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Wow! Can the Altera device support or emulate TMDS electrical signaling? If yes, you could do at least DVI, or in good case even HDMI that has audio too.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

My Altera Design - is VideoController with 16bit-wide parallel interface (as i8080)

EMU God

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I agree ... it looks nice ... but where is the Atmel component to make it relevant to this website?

Ross McKenzie, Melbourne Australia

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

There is an AT25256 SPI EEPROM on board. :D

https://www.mattairtech.com/
ARM Cortex M and XMEGA development boards / Gentoo Linux

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Curious how you emulate games like that. Are you loading an OS on the Blackfin and using a pre-made emulator or did you make the emulator yourself?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Sega had a 12mhz 68000 in it. I think apple must have had a 68000 'binary interpreter' because they were running 68000 executables on the power pc risc cpus with 32 32bit registers. I imagine the 'model' of the 68000 cpu registers are 8 32bit data registers and 8 32 bit address registers, and a BIG switch with a case for every opcode. I cant imagine there would be less than a dozen power pc instructions for every 68000 instruction. Like forth or java or basic... an interpreter is an interpreter. So a couple hundred mhz power pc mac would run an old mac program about as fast as the old mac ran it.

Imagecraft compiler user

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

farmosh203 wrote:
Curious how you emulate games like that. Are you loading an OS on the Blackfin and using a pre-made emulator or did you make the emulator yourself?

I have made loader for the CPU which is burned in EEPROM (loaded in Blackfin Internal SRAM).

It can choose and load applications, for example emulators of game console hookups in external memory (SDRAM).

I did not write emulators, and ported a C-code of open-source emulators

EMU God

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Some my projects became opensource:
http://emu-apparatchik.narod.ru/...

1) IBM PC Pack

DOS/Win98. Games, work with ATAPI CD R/W, soundcard routine, videocard(2D, 3D accelerator), system soft

2) VideoMonster+

Videocard based on V9990(Yamaha videochip)

3) VideoFlipper

Videosystem for Thresher Forever. VHDL.

4) MicroMachine

first my game console on ATmega128!
soft,api, games are included!

5) Advanced MicroMachine

Secong game console based ARM9!
with emulator source!!!