Author Topic: JXD A1000 Custom Firmware  (Read 1815 times)

kurtbilisim (OP)

JXD A1000 Custom Firmware
« on: November 02, 2015, 11:40:52 am »


I recently got this device and I'm satisfied with the hardware. The software on the other hand, needs modifications. My actual concern is that the emulators stretch and smooth the image along the entire screen, which I don't like. I'm trying to find a way to fix it. Perhaps along the way, I can find ways to do more modifications. I decided to open this thread because I can't find many sources to help myself so maybe I can help someone instead.

WARNING: At the moment, camera & radio can't be used in the latest official firmware so use only if you've already installed it before or don't care about them. Also, I'm not sure if it breaks anything else (eg. downgrading emulators) so use at your own risk.

INDEX
1.Installing/Flashing the Firmwares
2.Unpacking & Packing of the Firmwares
3.System File 8000_MMI.RAP
4.My Base Custom Folder
« Last Edit: November 02, 2015, 11:47:25 am by kurtbilisim »

kurtbilisim (OP)

Re: JXD A1000 Custom Firmware
« Reply #1 on: November 02, 2015, 11:42:36 am »
1.Installing/Flashing the Firmwares

First of all, you can get the latest firmware from http://www.jxdofficial.com. Simply download the A1000_20130531 file and extract somewhere.

There are 3 files of importance:
1.FRM.exe: This is the executable for installing the firmware.
2.Images_Redboot_8050_DDR_ScanDRAM_Once_20120227.img: This is boot loader thingy.
3.A1000EN-UOA-BTR-YB20120406-8110C-100C-CG0307-NOFM.img: This holds the firmware files we can modify.

Here's how you install/flash a firmware. This deletes all files in the device so make sure you backup your files (photos, save game files etc.)

1.Unplug & turn off your device

2.Run FRM.exe which should look like this



3.The Advanced tab is for packing so we use Basic tab for installing. Select "Platform = Pmp8000", "Dram type = 0_HYNIX" and under Options frame, check "Program All", "Read Verify" and "Rebuild Nand FS". For Boot code dropdown, select the boot file at wherever you extracted.(Images_Redboot_8050_DDR_ScanDRAM_Once_20120227.img) For Resource + Binary file dropdown, select the other firmware file. (A1000EN-UOA-BTR-YB20120406-8110C-100C-CG0307-NOFM.img)

4.Now while pressing the X button of the device, connect it to the PC. (The button may be different for some devices, I've seen somewhere Up button was used instead.) If done correctly the program should detect the device and "Dev0 - Not Connected" part turn blue like this.



5.Press the ISP button and wait until finishes. There will be a few separate steps indicated on progress bar.



6.When you see a line like "Device:0 ==> Write resource is success. (185 s)" in the text box, the process is finished.



7.Now you can close the program and safe remove the USB device and unplug. Press the small Reset button (labeled R) at the bottom right of the device. Then open and test the new firmware. This is how you can also install your own modified firmware packs instead of A1000EN-UOA-BTR-YB20120406-8110C-100C-CG0307-NOFM.img file.
« Last Edit: November 02, 2015, 02:02:24 pm by kurtbilisim »

kurtbilisim (OP)

Re: JXD A1000 Custom Firmware
« Reply #2 on: November 02, 2015, 11:43:28 am »
2.Unpacking & Packing of the Firmwares

I've created a PHP script that can be used to unpack & pack the firmware IMG file. If you know PHP, you can get it here.

Though the FRM tool can be used to pack as well, so you can get the unpacked archive of the firmware instead. You can modify anything in this and repack using the FRM.exe tool.

Here's how.

1.Open FRM.exe and switch to the Advanced tab.



2.Type your desired version numbers into Resource Ver and Binary Ver fields.

3.Description field needs a text code. I'm not sure how long it can be but I suggest keeping it under 16 characters.

4.Empty out Binary and packages fields.

5.Select the "FIRMWARE-20120406" folder you downloaded and extracted (and maybe modified) for the Resource field.

6.Select the output file path and name for the Output file field and press Wrap Image button. The program will stop responding for a while, just wait until it creates the IMG file using that folder and then you can use that IMG instead of A1000EN-UOA-BTR-YB20120406-8110C-100C-CG0307-NOFM.img during installation/flashing and it should work.
« Last Edit: November 02, 2015, 01:59:45 pm by kurtbilisim »

kurtbilisim (OP)

Re: JXD A1000 Custom Firmware
« Reply #3 on: November 02, 2015, 11:44:26 am »
3.System File 8000_MMI.RAP

The /IMAGE/8000_MMI.RAP file seems to be containing the operating system codes. According to http://openschemes.com it uses some kind of checksum and fortunately those guys solved it.

You can edit the 8000_MMI.RAP file using a Hex Editor and then use their checksum fixing tool. Get the files here and in Windows, you can use the chkmmp.exe file. I recommend copying it near 8000_MMI.RAP file and creating a BAT file with the command "chkmmp 8000_MMI.RAP w" and run it whenever you modify the RAP file. The "w" in the command tells it to fix the checksum value.
« Last Edit: November 16, 2015, 08:25:19 am by kurtbilisim »

kurtbilisim (OP)

Re: JXD A1000 Custom Firmware
« Reply #4 on: November 02, 2015, 11:45:23 am »
4.My Base Custom Folder

I'm trying to create a minimal firmware folder and intend to share for those interested when it's ready. Check back later. This might take days or even weeks >.<

zhongtiao1

Re: JXD A1000 Custom Firmware
« Reply #5 on: November 02, 2015, 03:30:16 pm »
You should be able to edit and create a custom firmware just with the IMG files right? You would only need to edit the RAP file if you wanted to edit what operating system is on the A1000. Also, it may be just a generic file that adapts the firmware so that it is compatible with the spmp8000 processor

chevette

  • *
  • Posts: 150
Re: JXD A1000 Custom Firmware
« Reply #6 on: November 02, 2015, 11:11:07 pm »
I would certainly like to try it out. The JXD A1000 is a pretty cool handheld with some good emulators built in. My wish list would be to fix the button mapping for the Genesis / MD emulator and the SNES emulator too. The NES, GameBoy, GameBoy Color, and GBA are OK as is. Thanks for looking at it and trying to improve it.