Spectrum ZX

Moderators: mdrjr, odroid

Spectrum ZX

Unread postby KiddleStone » Tue Jun 26, 2018 4:42 am

Dear,

Some engineers from our forum might answer.
viewforum.php?f=157

Please post your question on forum.

Thanks,

Lisa

Dear Directors

Odroid have launched the Odroid -GO and it is progamable. Have you looked into seeing if it has the power and screen resolution to emulate a Spectrum ZX 8bit computer?

The Specturm ZX Vega+ production has been a mess, almost fraud with no delivery.
I suggest to you that there could be another market for you, with suitable adapted keys, for a GO Spectrum ZX. Costs met by crowd funding.

Regards
KiddleStone
 
Posts: 2
Joined: Tue Jun 26, 2018 4:20 am
languages_spoken: english

Re: Spectrum ZX

Unread postby mad_ady » Tue Jun 26, 2018 5:03 am

I was thinking the same thing. I think the GO might be able to emulate zx spectrum, though I don't know what you can do about keyboard. A bt keyboard could be used maybe...
User avatar
mad_ady
 
Posts: 4713
Joined: Wed Jul 15, 2015 5:00 pm
Location: Bucharest, Romania
languages_spoken: english
ODROIDs: XU4, C1+, C2, N1

Re: Spectrum ZX

Unread postby crashoverride » Tue Jun 26, 2018 7:04 am

mad_ady wrote:I don't know what you can do about keyboard.

This was exactly my thought, but I looked it up on wikipedia and the Vega+ does not have a keyboard:
Image

The D-Pad mapping is obvious, and the "S", "F", "1", "2" could be mapped to the ODROID-GO's "Select", "Start", "A", "B".
crashoverride
 
Posts: 4023
Joined: Tue Dec 30, 2014 8:42 pm
languages_spoken: english
ODROIDs: C1

Re: Spectrum ZX

Unread postby mad_ady » Tue Jun 26, 2018 1:39 pm

I would welcome zxspectrum emulation, because I grew up with a zx spectrum clone (I have 0 experience with the other platforms).
A BT kb might be needed to run basic and have a native "IDE" :)
User avatar
mad_ady
 
Posts: 4713
Joined: Wed Jul 15, 2015 5:00 pm
Location: Bucharest, Romania
languages_spoken: english
ODROIDs: XU4, C1+, C2, N1

Re: Spectrum ZX

Unread postby briansm » Tue Jul 03, 2018 5:47 am

Thought I'd have a go (somebody was bound to have a go...)

https://youtu.be/0sbqQK6wHMY


It basically works, Speed is about 95% just now I guess and the sound driver is quick-and-dirty and awful just now, but it's a start I suppose.

The slowest part seems to be sending the screen data over SPI, without that the emulator can easily run full speed. It was a fun weekend of hacking (only got the console 5 days ago).
briansm
 
Posts: 43
Joined: Wed Jun 27, 2018 3:35 am
languages_spoken: english
ODROIDs: Ordoid GO, Ordoid-W

Re: Spectrum ZX

Unread postby mad_ady » Tue Jul 03, 2018 2:51 pm

Great job! I can't wait to play spectrum games on it! How did you manage keyboard? The spectrum had a full keyboard and games were using o/p/a/z as dpad.
User avatar
mad_ady
 
Posts: 4713
Joined: Wed Jul 15, 2015 5:00 pm
Location: Bucharest, Romania
languages_spoken: english
ODROIDs: XU4, C1+, C2, N1

Re: Spectrum ZX

Unread postby KiddleStone » Thu Jul 05, 2018 10:46 am

briansm wrote:Thought I'd have a go (somebody was bound to have a go...)

https://youtu.be/0sbqQK6wHMY


It basically works, Speed is about 95% just now I guess and the sound driver is quick-and-dirty and awful just now, but it's a start I suppose.

The slowest part seems to be sending the screen data over SPI, without that the emulator can easily run full speed. It was a fun weekend of hacking (only got the console 5 days ago).

:lol: Love it :D

Are you aware the hundreds of thousands Vega+ took and still cannot do what you did in a weekend! :o

Get yourself on indiegogo.com become a millionaire :mrgreen:

Keep up the great work :D
KiddleStone
 
Posts: 2
Joined: Tue Jun 26, 2018 4:20 am
languages_spoken: english

Re: Spectrum ZX

Unread postby briansm » Thu Jul 05, 2018 5:32 pm

Thanks. Honestly, I didn't know about the whole Vega+ thing until after I had ordered the console a few weeks ago, I just saw an article about ORDOID-GO in cnx-software and thought the hardware was ideal for ZX Spectrum emulation (right screen resolution, beefy enough processor etc).

for keyboard emulation I'm thinking of a combination of a menu option when pressing the 'menu' key to choose which keys the D-pad and A/B/start/select buttons emulate, some standard options like cursor and Kempston, and maybe a virtual on-screen keyboard controlled with the D-pad for fiddly bits. I'll do some more work on it when I get time and put the source on github when it's in a decent state.
briansm
 
Posts: 43
Joined: Wed Jun 27, 2018 3:35 am
languages_spoken: english
ODROIDs: Ordoid GO, Ordoid-W

Re: Spectrum ZX

Unread postby mad_ady » Thu Jul 05, 2018 5:45 pm

Great job!
User avatar
mad_ady
 
Posts: 4713
Joined: Wed Jul 15, 2015 5:00 pm
Location: Bucharest, Romania
languages_spoken: english
ODROIDs: XU4, C1+, C2, N1

Re: Spectrum ZX

Unread postby davidknight247 » Thu Jul 12, 2018 11:30 pm

The sound issues are fixed.

davidknight247
 
Posts: 29
Joined: Sun Jul 01, 2018 8:35 am
languages_spoken: english
ODROIDs: Odroid go

Re: Spectrum ZX

Unread postby rooted » Fri Jul 13, 2018 12:46 am

Thumbs up ^^^^^^
User avatar
rooted
 
Posts: 5681
Joined: Fri Dec 19, 2014 9:12 am
Location: Gulf of Mexico, US
languages_spoken: english
ODROIDs: C1, C1+, C2
XU3 Lite, XU4
N1
VU7+
HiFi Shield 2
Smart Power (original)

Re: Spectrum ZX

Unread postby explit » Fri Jul 13, 2018 2:50 am

Thats looks very promising. I read somewhere here, that Odroid Go is limited by 400Kb RAM (Thats more than enough for 8bit Consoles, anyway), but are we also limited by the Emulator Firmware Size? Can we add one (or maybe more) emulator(s) to the firmware.bin ?

Maybe also Atari?
explit
 
Posts: 5
Joined: Fri Jul 13, 2018 2:08 am
languages_spoken: english, german, ukrainian, russian
ODROIDs: Odroid-Go

Re: Spectrum ZX

Unread postby mad_ady » Fri Jul 13, 2018 3:58 am

Regarding RAM -if cpu resources are plentiful (I doubt they are), maybe one can implement a zram approach - compress leased used pages - though I guess you'd need a skeleton OS doing memory management for this to keep emulators from reinventing the wheel...
User avatar
mad_ady
 
Posts: 4713
Joined: Wed Jul 15, 2015 5:00 pm
Location: Bucharest, Romania
languages_spoken: english
ODROIDs: XU4, C1+, C2, N1

Re: Spectrum ZX

Unread postby hinzundcode » Fri Jul 13, 2018 6:04 am

It contains 328kb of fast internal data RAM and 4MB slower external SPI RAM.
hinzundcode
 
Posts: 1
Joined: Fri Jul 13, 2018 6:01 am
languages_spoken: english, german
ODROIDs: ODROID GO

Re: Spectrum ZX

Unread postby briansm » Thu Jul 19, 2018 8:04 pm

it is now in a usable state if anybody wants to test it out.

The source and a firmware.bin binary are at:
https://bitbucket.org/DavidKnight247/odroid-go-spectrum-emulator/src/master/

https://youtu.be/poG6sZTx7iY
briansm
 
Posts: 43
Joined: Wed Jun 27, 2018 3:35 am
languages_spoken: english
ODROIDs: Ordoid GO, Ordoid-W

Re: Spectrum ZX

Unread postby mad_ady » Thu Jul 19, 2018 8:23 pm

Great job! I love the keyboard mapping menu. I will surely try it out when my GO arrives. I don't have the nostalgia factor with the other consoles, but I did grow up with spectrum and DOS...
User avatar
mad_ady
 
Posts: 4713
Joined: Wed Jul 15, 2015 5:00 pm
Location: Bucharest, Romania
languages_spoken: english
ODROIDs: XU4, C1+, C2, N1

Re: Spectrum ZX

Unread postby jpxdude » Fri Jul 20, 2018 6:25 am

Fantastic work! I hope this gets considered with everything else in future. Love the creative keyboard mapping! In your opinion, do you think C64 emulation would be possible? :D
jpxdude
 
Posts: 18
Joined: Tue Jul 03, 2018 11:04 pm
languages_spoken: english
ODROIDs: Odroid Go

Re: Spectrum ZX

Unread postby briansm » Fri Jul 20, 2018 7:49 am

For C64 I couldn't really say myself.

When I was growing up you were either a 'Sinclair Spectrum' kid or a 'Commodore 64' kid (the rich kids had BBC Micro's but they were a minority).

35 years later I can still explain to you the memory map of the Spectrum display buffer, but I haven't got a clue how the C64 internals work :lol:
briansm
 
Posts: 43
Joined: Wed Jun 27, 2018 3:35 am
languages_spoken: english
ODROIDs: Ordoid GO, Ordoid-W

Re: Spectrum ZX

Unread postby Kabron » Fri Jul 20, 2018 5:47 pm

Very impressive.
It would be definite finished project when it'll be workable from the main game firmware as one of the platforms.
Is it possible to put it into free slot and run from the main firmware?
User avatar
Kabron
 
Posts: 48
Joined: Sun Feb 24, 2013 9:01 pm
languages_spoken: english
ODROIDs: U2, ODROID-GO

Re: Spectrum ZX

Unread postby briansm » Fri Jul 20, 2018 6:37 pm

I asked about this last week:
viewtopic.php?f=158&t=31440#p228615

The menu system is closed source and not modular as far as I know. mad_ady said there might be an alternative menu system in the pipeline in the future that would allow third party applications. If that happens, I'll work on the source to make it conform to the API and fit into the framework so it plays nice with the other emulators, but for now having it run individually is the only 'clean' option really.

(I don't want to bug Crashoverride with more requests just now, I imagine he is busy enough)
Last edited by briansm on Fri Jul 20, 2018 9:12 pm, edited 1 time in total.
briansm
 
Posts: 43
Joined: Wed Jun 27, 2018 3:35 am
languages_spoken: english
ODROIDs: Ordoid GO, Ordoid-W

Re: Spectrum ZX

Unread postby mad_ady » Fri Jul 20, 2018 7:29 pm

@briansm: your keyboard/key mapping will be interesting to be released as a separate/demo project so that it can be imported in other projects (e.g. a file manager, an mp3 player, dosbox?)

User @Kamots expressed his frustration with springboard and wanted to eventually pursue an alternate menu: https://github.com/theforest/trampoline
User avatar
mad_ady
 
Posts: 4713
Joined: Wed Jul 15, 2015 5:00 pm
Location: Bucharest, Romania
languages_spoken: english
ODROIDs: XU4, C1+, C2, N1

Re: Spectrum ZX

Unread postby briansm » Fri Jul 20, 2018 8:21 pm

@mad_ady, the keyboard is specific to the ZX Spectrum with its 40 keys and is about 50 lines of code, it's probably not something you would want to use elsewhere and not worth making its own project I'd say. The whole emulator is only around 3 weekends worth of coding and figuring out the Arduino / esp-idf API's. It started out as an Arduino sketch and got migrated to esp-idf as there is a proper buffer-based audio driver available there, and working SD-card access.
briansm
 
Posts: 43
Joined: Wed Jun 27, 2018 3:35 am
languages_spoken: english
ODROIDs: Ordoid GO, Ordoid-W

Re: Spectrum ZX

Unread postby briansm » Tue Jul 24, 2018 9:39 pm

@kabron, I've now bundled it with the replacement menu firmware, so it runs alongside the existing 6 emulators now. I'm done :)
briansm
 
Posts: 43
Joined: Wed Jun 27, 2018 3:35 am
languages_spoken: english
ODROIDs: Ordoid GO, Ordoid-W

Re: Spectrum ZX

Unread postby lordhardware » Tue Jul 24, 2018 9:46 pm

Fantastic work @briansm i actually haven't ever played the spectrum. Any games worth checkong out that hold up (and will play well on 2 buttons?)
lordhardware
 
Posts: 54
Joined: Sat Sep 20, 2014 11:56 pm
languages_spoken: english
ODROIDs: U3
Odroid-W

Re: Spectrum ZX

Unread postby briansm » Tue Jul 24, 2018 10:05 pm

Without posting any ROMS here, google 'Manic Miner z80' to get an example game file that will play out-the-box. Manic Miner is one of the canonical ZX Spectrum games from the 80's
briansm
 
Posts: 43
Joined: Wed Jun 27, 2018 3:35 am
languages_spoken: english
ODROIDs: Ordoid GO, Ordoid-W

Re: Spectrum ZX

Unread postby lordhardware » Tue Jul 24, 2018 10:09 pm

Looks great! I had an atari 2600 as a kid and would have killed for graphics like that.
Don't get me wrong, I loved the look of the waffle aliens I was shooting in Space Invaders, they made me hungry.
lordhardware
 
Posts: 54
Joined: Sat Sep 20, 2014 11:56 pm
languages_spoken: english
ODROIDs: U3
Odroid-W

Re: Spectrum ZX

Unread postby davidknight247 » Tue Jul 24, 2018 11:07 pm

lordhardware wrote:Fantastic work @briansm i actually haven't ever played the spectrum. Any games worth checkong out that hold up (and will play well on 2 buttons?)


See here for the Your Sinclair Top 100 spectrum games list. The arcade games should run fine with two buttons but you will struggle to play a text adventure!
http://www.worldofspectrum.org/ystop100.html
davidknight247
 
Posts: 29
Joined: Sun Jul 01, 2018 8:35 am
languages_spoken: english
ODROIDs: Odroid go

Re: Spectrum ZX

Unread postby Kabron » Tue Jul 24, 2018 11:46 pm

Taking off my hat
User avatar
Kabron
 
Posts: 48
Joined: Sun Feb 24, 2013 9:01 pm
languages_spoken: english
ODROIDs: U2, ODROID-GO

Re: Spectrum ZX

Unread postby lordhardware » Tue Jul 24, 2018 11:59 pm

davidknight247 wrote:See here for the Your Sinclair Top 100 spectrum games list. The arcade games should run fine with two buttons but you will struggle to play a text adventure!
http://www.worldofspectrum.org/ystop100.html


Chase H.Q looks incredible, and Chaos sounds like my kind of game, wasnt that rereleased due to a kickstarter recently or something? Or am i thinking of something else, was Chaos the X-Com guy?
lordhardware
 
Posts: 54
Joined: Sat Sep 20, 2014 11:56 pm
languages_spoken: english
ODROIDs: U3
Odroid-W

Re: Spectrum ZX

Unread postby Kabron » Wed Jul 25, 2018 1:50 am

@briansm
I'm prepairing M5STACK/ODROID-GO combo library. It'll allow to run M5STACK apps such as tobozo M5STACK-SD-Updater(https://github.com/tobozo/M5Stack-SD-Updater) and botofancalin M5Stack-MultiApp-Advanced(https://github.com/botofancalin/M5Stack ... p-Advanced) on ODROID-GO.
As SD-Updater app launches as binary file from SD, the idea arise to use your new menu to launch user firmware as one of the emulator.
In that case we will have a huge monster device all in one.
What do you think about?
User avatar
Kabron
 
Posts: 48
Joined: Sun Feb 24, 2013 9:01 pm
languages_spoken: english
ODROIDs: U2, ODROID-GO

Re: Spectrum ZX

Unread postby briansm » Wed Jul 25, 2018 2:57 am

The menu is modular, you don't need to ask me to add applications to it, you can add them yourself via a configuration file if you just want it for your own use.

If you want me to add an application into the code itself, PM me about it.

Keep in mind that the menu I did is _not_ official software for the console, it's just another third party program by J. Random Hacker.
briansm
 
Posts: 43
Joined: Wed Jun 27, 2018 3:35 am
languages_spoken: english
ODROIDs: Ordoid GO, Ordoid-W

Re: Spectrum ZX

Unread postby Kabron » Wed Jul 25, 2018 5:09 pm

briansm wrote:The menu is modular, you don't need to ask me to add applications to it, you can add them yourself via a configuration file if you just want it for your own use.

Would you be kind to explain what and where is this configuration file?
If I have myfirmware.bin with loading address say 0x8000, how have I act to run it from SD card?
Thanks in advance
User avatar
Kabron
 
Posts: 48
Joined: Sun Feb 24, 2013 9:01 pm
languages_spoken: english
ODROIDs: U2, ODROID-GO

Re: Spectrum ZX

Unread postby crashoverride » Fri Jul 27, 2018 2:20 am

I reviewed the ZXSpectrum application, but it does not build with the recent emulator library changes.

To support 3rd party applications like this, the device firmware has been updated (20170726) to allow multiple applications in "/odroid/firmware" on the SD card. Applications can be packaged with the 'mkfw' tool and placed in the folder. The "slot" system limitation is removed and application specific partitions are now created dynamically.

For an example of packaging a custom application, see the Doom release page:
https://github.com/OtherCrashOverride/doom-odroid-go/releases/tag/20180726

A 86x48 application "tile" graphic is required. This tile is displayed by the device firmware and can be created with ffmpeg:
Code: Select all
ffmpeg -i tile.png -f rawvideo -pix_fmt rgb565 tile.raw


Application partition information takes the place of the slot system:
Code: Select all
./mkfw "DOOM (20180726)" tile.raw 0 16 1048576 app build/esp32-doom.bin 66 6 4194304 wad doom1-cut.wad

"DOOM (20180726)" = description
tile.raw = application graphic tile
0 16 1048576 app build/esp32-doom.bin = ESP partition type: 0 (application), ESP partition subtype: 16 (OTA0), partition label="app", partition data=build/esp32-doom.bin
66 6 4194304 wad doom1-cut.wad = ESP partition type: 66 (custom), ESP partition subtype: 6 (custom): partition label="wad", partition data=doom1-cut.wad
crashoverride
 
Posts: 4023
Joined: Tue Dec 30, 2014 8:42 pm
languages_spoken: english
ODROIDs: C1

Re: Spectrum ZX

Unread postby jutleys » Fri Jul 27, 2018 2:39 am

I can't exit doom and when i turn system off it loads doom again.
jutleys
 
Posts: 51
Joined: Fri Jul 20, 2018 1:06 am
languages_spoken: english
ODROIDs: Odroid Go

Re: Spectrum ZX

Unread postby briansm » Fri Jul 27, 2018 2:45 am

So, it looks like to switch applications you need to re-flash... OK.

I was thinking maybe the device firmware would act as a launcher as well as flashing applications... guess not.

Also, mkfw doesn't build clean in Linux...

cc -g main.c crc32.c -o mkfw
main.c: In function ‘main’:
main.c:145:17: error: redefinition of ‘i’
for(int i = 0; i < (file_size); i += BLOCK_SIZE)
^
main.c:76:13: note: previous definition of ‘i’ was here
int i = 3;
^
main.c:145:9: error: ‘for’ loop initial declarations are only allowed in C99 mode
for(int i = 0; i < (file_size); i += BLOCK_SIZE)
^
main.c:145:9: note: use option -std=c99 or -std=gnu99 to compile your code
make: *** [all] Error 1


briansm
 
Posts: 43
Joined: Wed Jun 27, 2018 3:35 am
languages_spoken: english
ODROIDs: Ordoid GO, Ordoid-W

Re: Spectrum ZX

Unread postby jutleys » Fri Jul 27, 2018 2:50 am

Its a lot of hassle to keep reflashing firmware just to play doom and not practical :(
jutleys
 
Posts: 51
Joined: Fri Jul 20, 2018 1:06 am
languages_spoken: english
ODROIDs: Odroid Go

Re: Spectrum ZX

Unread postby crashoverride » Fri Jul 27, 2018 2:56 am

jutleys wrote:I can't exit doom and when i turn system off it loads doom again.

Turn the device off.
Hold B.
Keep B held and turn the device on.
Wait 5 seconds and the application menu will appear.

briansm wrote:So, it looks like to switch applications you need to re-flash... OK.

This allows applications to be packaged without source code modifications. This is important for an application like MicroPython.

jutleys wrote:Its a lot of hassle to keep reflashing firmware just to play doom and not practical

The Go-Play application and Doom are extreme examples because they are so large. For small applications, the speed is the same or less as it was for loading a GBC ROM in the factory release of the emulators.
crashoverride
 
Posts: 4023
Joined: Tue Dec 30, 2014 8:42 pm
languages_spoken: english
ODROIDs: C1

Re: Spectrum ZX

Unread postby crashoverride » Fri Jul 27, 2018 2:59 am

briansm wrote:Also, mkfw doesn't build clean in Linux...

It builds on the gcc version in Ubuntu 16.04. I will make the necessary corrections.
crashoverride
 
Posts: 4023
Joined: Tue Dec 30, 2014 8:42 pm
languages_spoken: english
ODROIDs: C1

Re: Spectrum ZX

Unread postby mad_ady » Fri Jul 27, 2018 3:16 am

Sorry for the offtopic, but isn't dynamic partitioning a future headache? I realize it saves space, but what if previous layout was part1 500k, part2 500k, part3 1M and the user wants to flash a 700k file into partition1 after a while? Won't it clobber the start of partition2?
Or is the plan to store all content in the firmware folder and the loader will erase and flash everything, not just part1?
User avatar
mad_ady
 
Posts: 4713
Joined: Wed Jul 15, 2015 5:00 pm
Location: Bucharest, Romania
languages_spoken: english
ODROIDs: XU4, C1+, C2, N1

Re: Spectrum ZX

Unread postby crashoverride » Fri Jul 27, 2018 3:32 am

mad_ady wrote:Won't it clobber the start of partition2?

Yes, the firmware was always intended to be "atomic". The responsibility for partition layout and updating/overwriting partitions within that layout are delegated to the application itself. For example, if you have menu system as an application, it will be responsible for maintaining the data in the partitions it defines.
crashoverride
 
Posts: 4023
Joined: Tue Dec 30, 2014 8:42 pm
languages_spoken: english
ODROIDs: C1

Re: Spectrum ZX

Unread postby briansm » Fri Jul 27, 2018 5:32 am

OK, I've packaged the emulator up as a ZX_Spectrum.fw file now and put it on the download site along with updated install instructions.

https://bitbucket.org/DavidKnight247/od ... rc/master/
briansm
 
Posts: 43
Joined: Wed Jun 27, 2018 3:35 am
languages_spoken: english
ODROIDs: Ordoid GO, Ordoid-W

Re: Spectrum ZX

Unread postby mad_ady » Fri Jul 27, 2018 4:11 pm

I've tried your new package and it works well, thanks!
I have a couple of suggestions:
1. After flashing your package, when you try to flash the stock emulators again there is a partition set error that crashoverride says it's because the partition needs to be a multiple of 64k. He said he'd patch his mkfw tool to account for that, so you may need to rebuild it.
2. There should be a way to save key mappings and load them automatically when starting a game. For instance the mappings might be saved with the game's name and loaded on game load. That would make things easier. Perhaps in time you could centralize and distribute key mappings with the emulator as well. Are they saved on sd card?

Thanks for bringing my childhood back :D
User avatar
mad_ady
 
Posts: 4713
Joined: Wed Jul 15, 2015 5:00 pm
Location: Bucharest, Romania
languages_spoken: english
ODROIDs: XU4, C1+, C2, N1

Re: Spectrum ZX

Unread postby crashoverride » Fri Jul 27, 2018 4:21 pm

mad_ady wrote:crashoverride says

I probably need to clarify:

Partition sizes must be a multiple of 64K because that is the flash erase block size used in the esp-idf. Using a non 64k multiple will cause erase/write operations to overlap into another partition or fail. I need to add parameter validation to the 'mkfw' tool.

The ZX emulator package exposed a bug in the firmware release. I had never tested with partitions sizes smaller than 1MB. This revealed that esp-idf caches the partition table and does not see the changes made until a reboot. This causes firmware with a larger partition size to fail with "BOOT SET ERROR". I have created a patch for this, but it should only affect the device firmware since nothing else dynamically modifies the partition table.
https://github.com/OtherCrashOverride/esp-idf/commit/49fbef73c300920d2f63c9afb705eefabe3dac87
https://github.com/OtherCrashOverride/odroid-go-firmware/commit/2f7c0de4597c91af1624081ba70d11355a1ad8a0
crashoverride
 
Posts: 4023
Joined: Tue Dec 30, 2014 8:42 pm
languages_spoken: english
ODROIDs: C1

Re: Spectrum ZX

Unread postby briansm » Fri Jul 27, 2018 8:08 pm

OK, I've uploaded a replacement firmware file now.

Does the size need to be a parameter though? It would save trouble if it was just worked out from the size of the binary file, something like:

part.length = fileSize+65536-(fileSize%65536)

This sets part.length to fileSize rounded up to the nearest 64K block size.

(When I had a quick look at mkfw before I didn't realize that the paremeter had to be a specific size, though it was just the binary size. Also didn't try putting the original firmware back on a 'what can possibly go wrong?' basis :roll:

I'll make the emulator use per-game button mappings when I get time, (a small extra file per emulator on the SD card probably simplest) and try and make it build against the latest components/odroid API files for neatness.
briansm
 
Posts: 43
Joined: Wed Jun 27, 2018 3:35 am
languages_spoken: english
ODROIDs: Ordoid GO, Ordoid-W

Re: Spectrum ZX

Unread postby jutleys » Fri Jul 27, 2018 8:36 pm

I still get the error with the new replacement firmware file for zx spectrum have to flash original firmware twice to fix it.
jutleys
 
Posts: 51
Joined: Fri Jul 20, 2018 1:06 am
languages_spoken: english
ODROIDs: Odroid Go

Re: Spectrum ZX

Unread postby briansm » Fri Jul 27, 2018 8:55 pm

Me too.... it sounds like the proper fix is a new bootloader release, I don't know if there is anything else I can do about it at this end. I'll add a note about having to install Go-Play twice to get it working for now.
briansm
 
Posts: 43
Joined: Wed Jun 27, 2018 3:35 am
languages_spoken: english
ODROIDs: Ordoid GO, Ordoid-W

Re: Spectrum ZX

Unread postby Kabron » Fri Jul 27, 2018 10:39 pm

Simlpe 2fw.cmd to simplify life
Using 2fw myapp.bin
myapp.raw must exists.

Code: Select all
@echo off
echo.
set /a size=%~z1
set /a blocks = (size / 65536 + 1)*65536
mkfw "%~n1" %~n1.raw 0 16 %blocks% app %~n1.bin
echo.
if EXIST %~n1.fw del %~n1.fw
ren firmware.fw %~n1.fw
echo  inFile: %1 Filesize: %size% Partition size: %blocks%
echo outFile: %~n1.fw
User avatar
Kabron
 
Posts: 48
Joined: Sun Feb 24, 2013 9:01 pm
languages_spoken: english
ODROIDs: U2, ODROID-GO

Re: Spectrum ZX

Unread postby Kabron » Fri Jul 27, 2018 10:57 pm

2raw.cmd myapp_picture.jpg/png
Resize to 86x48 easy with IrfanView(https://www.irfanview.com)
Code: Select all
@echo off
if exist %~n1.raw del %~n1.raw
ffmpeg -i %1 -f rawvideo -pix_fmt rgb565 %~n1.raw
User avatar
Kabron
 
Posts: 48
Joined: Sun Feb 24, 2013 9:01 pm
languages_spoken: english
ODROIDs: U2, ODROID-GO

Re: Spectrum ZX

Unread postby Kabron » Fri Jul 27, 2018 11:22 pm

I periodically got BOOT SET ERROR
what is this?
User avatar
Kabron
 
Posts: 48
Joined: Sun Feb 24, 2013 9:01 pm
languages_spoken: english
ODROIDs: U2, ODROID-GO

Re: Spectrum ZX

Unread postby briansm » Fri Jul 27, 2018 11:53 pm

It's a bug in the menu software (device firmware), the workaround just now seems to be to pick an application twice to get around it. Hopefully a new version will get released soon to fix it.
briansm
 
Posts: 43
Joined: Wed Jun 27, 2018 3:35 am
languages_spoken: english
ODROIDs: Ordoid GO, Ordoid-W

Next

Return to Game Emulators

Who is online

Users browsing this forum: No registered users and 3 guests