[MOD] Aladdin XBlast

Discussion in 'Xbox (Original console)' started by bennydiamond, Dec 29, 2014.

  1. bennydiamond

    bennydiamond Gutsy Member

    Joined:
    Aug 24, 2011
    Messages:
    430
    Likes Received:
    45
    The good news keep on coming.

    I've been working further on the code for those cheap Aladdin XT PLUS2 modchips you can buy on Eurasia.nu or Aliexpress.
    I was able to enable bank control from within XBlast OS, just like on the upcoming XBlast Mod.

    So basically, you reprogram the Aladdin's CPLD with this code, replace the SST flash chip for a SST49LF080A and you get a Aladdin XT that boots to XBlast OS and can load either a 512KB bank, 256KB bank or TSOP. Obviously, due to lack of hardware(but also internal resources, LC4032V CPLD is like 99% full), LCD, TSOP split, TSOP recovery and other such features requiring XBlast Mod hardware will not be available. Bank control within Evolution-X dashboard is also unavailable.

    I've made a small video in which I flash the 512KB bank, boot from 512KB bank and 256KB bank and finally enable quickboot on 512KB bank and reboot Xbox. All that on a Aladdin XBlast.


    To do this modification you'll need:
    -A Aladdin XT PLUS2 modchip(I don't know if lookalike hardware will work, I only tested on those cheap Aladdin XT you can still buy)
    -A soldering Iron
    -A Lattice JTAG programmer or compatible hardware (ex. FT2232 boards). Must be able to supply 3.3V.
    -A SST49LF080A flash chip in PLCC32 package(You cannot use the 49LF020(A) that came with the modchip).
    -A programmer for the SST49LF080A(TL866CS programmer with PLCC32 socket adapter work really well)
    -The files to program the CPLD and SST flash chip.

    The whole package can be downloaded here:
    https://db.tt/jBiqKuN9

    Archive contains:
    -Small readme
    -Aladdin XBlast SVF to program the LC4032V CPLD
    -Lattice parallel JTAG cable schematics
    -JTAG pinout on the Aladdin XT PLUS2
    -A copy of XBlast OS 0.2Beta to flash the SST49LF080A.

    The procedure is as follow:
    1. Solder leads on the 6 programming pads of the Aladdin XT.

    2. Connect the Aladdin XT to the JTAG programmer. Here's the one I built. Works great if you have a real Parallel Port on your computer:
    [​IMG]

    3.Use ispVM or urJTAG to program the CPLD with the supplied SVF file.
    -Procedure is as follow:
    1. Launch ispVM System and select "Add Device" button
    [​IMG]
    2. Press the "Select..." button under "Device".
    [​IMG]
    3. Select "JTAG-SVF" as device type and press "OK".
    [​IMG]
    4. Press the "Browse..." button and select "Aladdin_XBlast.svf" file
    5. Press the "Go" button once the main window looks like the screen below. CPLD will be erased, programmed and verified in a single click.
    [​IMG]


    4.Program the SST49LF080A with the bin file of XBlast OS 0.2 Beta. You don't need to fill the whole chip, just flash the 256KB image starting at offset 0xC0000. Here's a screen of what it looks like when using a TL866 programmer.
    [​IMG]

    5. Install into Xbox.

    As my other Aladdin XT CPLD releases. D0 pad is to be used on 1.0-1.5 Xboxes to control D0 signal.
    1.6(b) Xbox should use the L1 pad to solder a wire to LFRAME. Using L1 on 1.6(b) will enable modchip support but will not hold signal to ground permanently. This is preferred to avoid MCPX damage overtime. If using L1 pad on 1.6(b) does not yield good results, revert to using D0 pad.

    HD and BT pads are to be left unconnected. These are now used to bypass OS loading and load a BIOS bank instead. They are to be used only if OS bank becomes corrupt. To use them, you need to bridge either one of the 2 to ground. If I remember correctly, bridging HD pad to ground will load 512KB bank while bridging BT pad to ground will load 256KB bank but it could be the other way around. So installing it into Xbox, you no longer need to connect any wire except for D0/LFRAME.

    As a reminder, I cannot say if any other modchips that look like the Aladdin XT PLUS2 will work with this mod. Parts and pinout of the CPLD must be identical to the Aladdin XT PLUS2. If not then it will not work for sure. So don't PM me asking if a certain version of XenoChip or any other "clones" will work with this code... I don't know. I only have those cheap Aladdin XT PLUS2 I bought a couple of months ago.

    This thing is most likely a one shot deal from my part; meaning I'm releasing this mod as is. I don't intend to offer extensive support on this. I've tested it on multiple Xbox motherboards and programmed 2 Aladdin XT with this. Everything works without any issue. That said, have fun with it, use it as you like but do not expect any "official" support on my part for this. Hardware design(or lack of) of these Aladdin XT is simply a joke which can lead to all sort of electrical glitches and unexpected states. I will not accept any responsibility if your Aladdin XBlast doesn't work.

    Same goes for the OS, I added support for this mod in it and I plan on keeping that support but it is unlikely I will ever test OS releases on those Aladdin XT. XBlast OS is supposed to run on XBlast Mod hardware(but will always be available for everyone). If a future OS release contains a feature that isn't working on Aladdin XBlast; well it'll just be too bad.

    That being said, I hope you'll have fun with it.

    As a side note, I'm fairly sure that anyone who's having problems with those stock Aladdin XTs will see compatibility improvement on system that refused to boot. The CPLD code is super-optimized and design implementation reports a FMax of 121MHz. To put this in simple words, CPLD works really fast which gives a lot of time for the output signals from the CPLD to settle and stabilize before rising edge of clock occur(at that moment, electrical signals are latched and kept, anything that occurs between rising edges of clock signal doesn't matter). So if you had Xboxes that didn't boot with those Aladdin XT, you might want to reprogram one and test it again.
     
    Last edited by a moderator: May 25, 2015
  2. bennydiamond

    bennydiamond Gutsy Member

    Joined:
    Aug 24, 2011
    Messages:
    430
    Likes Received:
    45
    Just so you know, it's possible to sucessfully do this mod without having a dedicated flash chip programmer (like the TL866CS MiniPro programmer I mentionned in OP).

    Instead, you'd need a working modchip and a Xbox to boot from that modchip. Once you have reprogrammed the CPLD of the Aladdin XBlast(and properly inserted SST49LF080A in modchip), you can hotswap modchips and flash XBlast OS BIOS image onto the Aladdin XBlast by using your prefered Xbox App to flash Bios (Evolution-X dash, Gentoox Loader or even XBlast OS!).

    By doing this, the XBlast OS image will be programmed at the right spot to boot from it if you properly install the Aladdin XBlast (hook up D0 or LFRAME to it).

    Let me know how this goes!
     
    turfster likes this.
  3. ToxicMedz

    ToxicMedz Gutsy Member

    Joined:
    Jul 6, 2014
    Messages:
    433
    Likes Received:
    44
    I'd love to try this myself but its a bit over my head, no idea how to go about reprogramming the chips.

    Its a great upgrade to those cheap chips though! Thanks for all the hard work Benny!
     
  4. bennydiamond

    bennydiamond Gutsy Member

    Joined:
    Aug 24, 2011
    Messages:
    430
    Likes Received:
    45
    It's not very hard to reprogram the CPLD. It's almost the same procedure as programming a RGH chip for Xbox 360. If you have the necessary hardware programmer to do that, it's almost 100% sure you can reprogram the Aladdin XT. Connect Aladdin XT to JTAG programmer and run the SVF file in urJtag, ispVM, Impact or any other soft that can do the same job.

    As for the flash chip, you can use the Xbox itself to flash the OS by hotswapping modchips.
     
  5. ToxicMedz

    ToxicMedz Gutsy Member

    Joined:
    Jul 6, 2014
    Messages:
    433
    Likes Received:
    44
    would an old Aladdin LIVE programmer be able to be used by chance?
     
  6. bennydiamond

    bennydiamond Gutsy Member

    Joined:
    Aug 24, 2011
    Messages:
    430
    Likes Received:
    45
    For programming the flash chip yes; but only if the PC programmer software will accept to program something other than a SST49LF020(A). Aladdin chips only used 49LF020(A) flash chips so I think their programming software will only program the flash if this one returns the ID of a 49LF020(A).

    Their might be some soft that will accept other chip IDs and support the Aladdin Live Programmer hardware.

    As for the CPLD programming, you still require dedicated JTAG hardware. FT2232 boards will work under urJTAG if you have one. You might also have luck with an Bus Pirate if you convert the SVF in a XSVF but I never tried it with something other than Xilinx CPLDs...
     
  7. Bad_Ad84

    Bad_Ad84 Keyboard Error: Press F1 to Continue

    Joined:
    May 26, 2011
    Messages:
    7,087
    Likes Received:
    280
    Just to provide some feedback.

    I have flashed a few of these now and they work great. You can also use the CPLD upgrade with the stock bios chip, which should still give you the improved 1.6 support etc
     
  8. bennydiamond

    bennydiamond Gutsy Member

    Joined:
    Aug 24, 2011
    Messages:
    430
    Likes Received:
    45
    49LF020 will work because there is a known bug in the chip that the 49LF020A fixes. That's the same bug that allowed the non 'A' revision of this flash chip to be directly wired to the LPC port of the Xbox on 1.0/1.1s.

    Bear with me it's possible the flash chip that came with your Aladdin XT might be a non 'A' even if it's marked on the IC. I wouldn't be surprised they widely use counterfeit ICs in those chips since it doesn't matter which revision is in.

    That being said, I highly doubt that a real 49LF020A chips will work with this code.
     

Share This Page