Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 21 reacties
Submitter: Thedr

Tweaker Sprite_tm heeft de Sega Master System-emulator SMSPlus werkend gekregen op een Espressif ESP31-soc. In een korte demovideo valt te zien hoe de microcontroller 15 beelden per seconde naar een kleine aangesloten lcd weet te sturen.

De Espressif ESP31 is een bètaversie van de ESP32, legt Sprite_tm verder uit op het Espressif-forum. Volgens de Tweaker werkt het programma op een enkele 160MHz-core, waarvoor nog wat software-aanpassingen nodig waren. Het geïntegreerde ram van de tweede core doet dienst als de Master System-vram. De video-output is een beeld van 320x240 pixels op 15fps, maar volgens Sprite_tm kan de fps nog hoger, ware het niet dat het scherm via de spi-bus niet meer aankan. "Desalniettemin is de game goed speelbaar," aldus de Tweaker.

Voor gebruikers die dezelfde opstellingen willen maken, heeft Sprite_tm de source van de software vrijgegeven op GitHub. Benodigd zijn onder andere een ESP31-chip met tenminste 2MB flashgeheugen, een ILIU9341-display met vierdradige spi-interface en eventueel een I2S-codec om het geluid af te handelen. Tot slot kunnen gebruikers een PlayStation-controller aansluiten om de game aan te sturen, zoals Sprite_tm dat ook deed.

De Sega Master System concurreerde eind jaren '80 met de Nintendo Entertainment System. Het Chinese Espressif, waar Sprite_tm voor werkt, heeft momenteel de ESP32-microcontroller in ontwikkeling. De ESP31, waar deze emulator op werkt, is een bètaversie van de ESP32 en daarvan zijn er nu 200 in handen van testers wereldwijd.

Moderatie-faq Wijzig weergave

Reacties (21)

Heb hier Sega Mega drive emulator op stm32 draaien, stm32f429 @180Mhz, dat loopt net iets soepeler dan op ESP31

Link naar de code zit hier bij, is niet mijn code hoor.
https://www.youtube.com/watch?v=qtNLctyoxU8

Stm32 VGA 640x480 Sega master system
https://www.youtube.com/watch?v=oz4leSl8n-U

Ook NES emulator draait op stm32, SNES heb ik nog niet gezien, word wellicht wat te zwaar.

Ik ben zelf al tijdje bezig met atari2600 emulator voor stm32, heb de 6502 werkend in de software en kan assembler code draaien en ben nu bezig met I/O (6532) chip en output(TIA) chip. Ga de TIA niet emuleren, vanaf daar zal data naar de TFT gaan ipv RF modulator.

[Reactie gewijzigd door mad_max234 op 21 december 2015 11:46]

Hehe, dit is een heul snelle port. Het is feitelijk de sourcecode van SMSPlus (wat normaliter op een PC draait) die iets is aangepast voor wat lager geheugengebruik; verder is er niets geoptimaliseerd specifiek voor de ESP31. Een hoop van de delay zit 'em trouwens in het LCD; dat heeft een SPI-interface'tje wat maar met 15FPS data toegeschiven kan worden. Als ik de video-output uitzet haal ik 70FPS. En dan gebruik ik de 2e core in de ESP31 nog niet eens.
Misschien ben ik de enige, maar heb nog nooit gehoord van espressif. Blijkbaar maken ze socs voor internet of things doeleinden. Misschien was het handiger omdat in het artikel te vermelden?
Ik ook niet, zat me even te verdiepen. De ESP31 is een beperkt geproduceerde 'experimentele' versie van het toekomstige ESP32 evaluation board. Er zit een dual-core Tensilica L108 processor in waar ik verder niks over heb gevonden. Wel de Tensilica wiki, over de architectuur: http://en.wikipedia.org/wiki/Tensilica
Het stukje over de Xtensa DPU/instructieset, wat volgens mij dus ook in die L108 zit is interessant. Het lijkt me een programmeerbare hybride CISC/RISC processor of iets dergelijks.
Ik wou dat ik tijd had voor zoiets. :'(

[Reactie gewijzigd door blorf op 21 december 2015 10:35]

ESP32 is een dualcore SoC met Wifi en BTLE, een "opvolger" van de bekende ESP8266 (een arduino achtig embedded bordje waarbij vooral de WiFi mogelijkheden het unique selling point is).

http://www.cnx-software.c...-le-and-more-peripherals/
Gamen op je koelkast, is je gekoelde-dranken-voorraad wel lekker dichtbij :+
Nou nog een automatische pauzeerfunctie als je de deur opent.
Wellicht iets gehoord over eps8266? (is family van elkaar)
Het grote ESP8266 topic

[Reactie gewijzigd door mad_max234 op 21 december 2015 11:56]

Nice! Dat ziet er nog goed speelbaar uit. Het is niet echt handheld formaat, maar leuke ontwikkeling!

Op hoeveel fps draaide de originele SEGA destijds? "Gewoon" 25 als het om een PAL systeem ging?
50fps is "gewoon" op een PAL systeem, niet 25fps. De Master System draaide ook op 50fps, en 60fps op NTSC. Kijk maar eens naar deze 60fps youtube video, let vooral op het "schild" wat met 60fps knippert:
https://www.youtube.com/watch?v=xt8p2mny3no

Voor zover ik me kan herinneren had Sonic Chaos, zoals in de video, op de originele Master System en Game Gear nogal veel last van vertragingen.
Ah toch wel 50 fps. Dat dacht ik al, maar ik Wikipedia maakte mij aan het twijfelen door te zeggen: "broadcasting at 625-line / 50 field (25 frame) per second (576i)." Ik las dat als 50Hz, maar blijkbaar 25 frames.

Maar goed, ook toen hadden we dus al last van framedrops zoals dat vandaag de dag ook veel zien. :)

[Reactie gewijzigd door Tsux op 21 december 2015 10:43]

Fps en hz is ook bijna het zelfde. Hz is de vernieuwingsfrequentie bij met name CRT schermen. Fps het aantal frames.

Echter, de meeste series en films worden op 24 Fps gefilmd. Wanneer dit wordt weergeven op een oude CRT wordt dit geconverteerd naar 25 Fps (precies de helft van 50) bij pal en 30 Fps bij ntsc.
Inderdaad maar hoe zit het nu dan met progressieve, dat is 50FPS? Mijn TV heeft geen stand voor 25Hz alleen 50Hz en 60Hz en met progressieve heb je geen oneven of even lijnen meer die om en om gerenderd worden waardoor je effectief de helft overhoud.
Ik kan me vergissen maar volgens mij heeft Tsux wel een punt dat de video output van PAL consoles weliswaar op 50 Hz, maar wel interlaced, dus effectief een framerate van 25 fps.
Het is maar net hoe je het interpreteert/noemt :).

Waar het op neer komt is dat er 50 verschillende "plaatjes" per seconden door de Master System gegenereerd worden.

Op youtube heb je ook 60fps nodig om de volledige framerate van een NTSC console te kunnen laten zien.
Dit lag echt aan het spel en zijn programmeurs, ik heb een aantal liggen (Altered Beast *kuch*) welke eerder een framerate van ongeveer -5 hadden. :+

Ik heb er eigenlijk nooit op gelet thuis, maar de framerate van de originele Sonic ligt niet veel hoger dan wat ik uit de video kan opmaken.

[Reactie gewijzigd door Garfrost op 21 december 2015 10:15]

Als de gameplay zichzelf limit, zelfs tot 15FPS, kan het nog steeds "soepel" ogen. De animaties van de karakters waren redelijk simpel tenslotte. De console stuurde gewoon, ongeacht wat hij daadwerkelijk als informatie aangeleverd kreeg een constant signaal uit.. als je dan horizontale lijnen oid kreeg, lag het eerder aan je TV.

Buiten dat waren kastjes als de SMS een compleet gesloten system(op de FM module na). Als je framedrops of ghosting had gehad, was je game niet geoptimaliseerd, en zou je het beter niet uit kunnen brengen, dan maar een manier zoeken om eromheen te werken. Een regeltje uit een weboek dat moderne consolegame-bouwers vaak uit gemakszucht lijken te negeren....

Zelfs Mortal Kombat 3 heeft een master system(die toen 10 jaar oud was) uitvoering, hoewel die alleen in BraziliŽ uitgegeven is.

[Reactie gewijzigd door Maikel_1976 op 22 december 2015 07:29]

De verwachting is dat de ESP32 iets duurder gaat worden dan de ESP8266. Die kan je voor minder dan 5 euro al kopen op Aliexpress, dus voor minder dan 10 euro is zoiets zometeen al te koop. Wel bijzonder dat je voor zo weinig geld zoiets krachtigs kan kopen, inclusief Wifi enz...
Sega Master System, mijn eerste console en de enige die ik nog steeds heb liggen, inmiddels in een donker hoekje op zolder, maar paar jaar geleden nog getest, werkt nog steeds. Erg veel plezier mee gehad vroeger :D.
Hij is wel aan het laggen hoor maar verder is het echt cool.

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True