BLL

What is BLL?

BLL is a low-cost developpment-kit for the Atari-Lynx, which is completly in-official.
The BLL-project started under a different name arround 1992, when Lars de-hacked his Lynx and we started to read-out the games. In the course of the project Lars developped a SRAM-cart and a keyboard-driver, so that we were able to get a complete debugger to run on the Lynx. By this time I've also written a remote-debugger and of course Lyxass, a macro-assembler for the Lynx.
With these tools I started to write a little demo we showed of on CeBIT.
After this the first commercial project started: A driving-school-program, which wasn't the big success :(. My second project was T-Tris. I started this project mainly because there was no Tetris for the Lynx and I loved to play the old DOS-text mode Tetris. T-Tris was a living project, means everytime I learnd something new about the Lynx I tried to stuff it into T-Tris.(This is the reason why there are three different T-Tris versions ! Sorry.) Due to persistent begging to release T-Tris, Lars and I made some design-changes, added a not-before-seen-as-game-casing box and started selling T-Tris. A few months later, while working mainly on BJL I tried to put an EEPROM on our carts, and it worked. This was the start of a new release of T-Tris, as the first game ever for the Lynx with a save-game option ! (Ok, EoB had it also, but I know only one person, who actually owns one !!)

But how could we do it ??

Thanks to a simple error Atari made. As you (maybe) know, all the Atari-carts have an encrypyed header and a check-sum over the complete rom-image. This checksum is so da?? good that changing a single-bit,the

INSERT GAME

message causes. But Atari made a mistake when they programed the header for Gauntlet. Actually two mistakes.
  1. The game has 256 blocks with 512 bytes = 128KB.
    But the checksum only checks the lower 256 byte of a block !!
  2. The header loads the title-sprite to any address and this before the rom-image is checked.
    This means, we could hack in our own code, which first was settled in the un-checked areas, but later I wrote a Troian Horse which takes control before the checksum is computed.

    But I still don't know : What is BLL ??

    BLL is a simple dev.kit which includes all the tools and software of the original kit but instead the SRAM-cart (of which max. 5 or 6 exist) it uses a loader-cart. This loader-cart has a small program which simply downloads the data from any host with a serial interface.
    The problem: Your program is stored in internal RAM, which limits it to max. 56KB and of course it is gone when the Lynx is switched off.
    But 65C02-code is compact and even with C are good program possible.
    Check out Matthias page and have a look at his MarbleMadness clone or his Nibbler-like SnakeByte.

    Why BLL ???

    Because the Jaguar-Kit is named BJL, which is Behind Jaggy Lines. So I named it Behind Lynx Lines.
    But also partly because a lack of a better idea :).

    The BLL-Kit

    Hardware

    To program on the Lynx, you'll need some hardware.
    The most important is a Lynx cart with a Loader-EPROM on it.It down-loads the programs via ComLynx from a host. This host is best an Atari computer, but any machine with a serial port will work.
    So, you also need an interface from ComLynx<->RS232.

    interface schematic

    Save n full size with right-click on the image.

    Currently the total costs for the hardware are arround 40DM (including cart,EPROM,EEPROM and interface).
    Note
    This is no fixed price, it may change.

    Software

    BLL is now on githup:NEW_BLL
    HOME

    last modified 01/02/2023