VOTE NOW!
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
Design 1/4
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
Usability 2/4
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
Creativity 3/4
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
Content 4/4

Magic Desk cartridges, in their original form, could hold up to 128Kb of code, or up to 16 banks of 8Kb each. Bank selection is done by writing a byte to $DE00. If bit 8 is set, then EXROM is disabled and RAM in the range of $8000 - $9FFF is usable.


This cartridge expands on the idea by having 128 banks of 8Kb available, thus the maximum size is 1 Mb.


Inputs of an 8-bit latch (74LS273) are connected to the data lines. Correct decoding for the I/O1 signal is done by combining PHI2 and I/O1 trough the NOR gates of 74LS02. The only feature that is deviant from the original Magic Desk specification, is that when you disable the cartridge by writing a value of $80 or larger to $DE00, the banking mechanism gets locked and no more write attempts to $DE00 will change the register's state until a hardware reset is performed. This had to be done because some programs would unintentionally write to $DE00 (or any other location in the I/O1 range) and sometimes, if $01 is wrongly set by the program, it could result in a crash. Since the use of this particular cartrige is primarily to enable making onefile program compilations trough the Magic Desk Cartridge Generator, we have decided to do it this way. If you want (or need) full compatibility with the original Magic Desk cartridge hardware, we have left a jumper to disable this behaviour. Cut the track exposed on the LOCK jumper ("YES" position) on the bottom side of the cartridge PCB, and connect it to the "NO" position. This way the locking mechanism is disabled, but still you can remove the cartridge from the memory map by setting the bit 7 of the latch high.


The PCB was designed to accomodate various types of EPROMs and their FLASH variants. The smallest EPROM you can use is 27C512 (64Kb), and the largest is 27C040 (512 Kb). There is an option to expand the board to a full 1Mb


The PCB is designed so it can be used in various types of cartridge cases. It has been mainly designed to fit the "Stumpy" cartridge from TFW8B, but it also fits the original Commodore cases and cases from the Polish companies KRADEX / MASZCZYK which are available at some retailers in Europe. It also fits in a 3D-printed case from the model available at Thingiverse. Unfortunately, I don't have all of the cartridge cases available in the market, so the design is NOT tested to fit with: Individual Computers' and Shareware Plus' (and all other currently available but not mentioned here) cases.


Please note - the cartridge cases from KRADEX / MASZCZYK are "low profile", and you cannot use a socket for the EPROM with this type of cases!


This project is Open Hardware licensed under the CERN OHL v. 1.2, released by Marko ?olaji? in 2020. You may redistribute and modify this documentation under the terms of the CERN OHL v.1.2.

http://ohwr.org/cernohl

Bill of materials used in this project

74LS02
1
74LS273
1
27C040
1
100nF
2
6x6mm Tact switch
1
Mar 28,2020
2,406 viewsReport item
  • Comments(8)
  • Likes(15)
You can only upload 1 files in total. Each file cannot exceed 2MB. Supports JPG, JPEG, GIF, PNG, BMP
    View More
    VOTING 18 votes
    • Tredez Jerome from FRANCE
      • 10
        design
      • 10
        usability
      • 10
        creativity
      • 10
        content
      10.00
    • jordanyte from UNITED STATES OF AMERICA
      Ben Jordan is a board level electronics and embedded systems design engineer. Always an avid tinkerer, Ben started with his first soldering iron at the age of 8, designing and etching his own PCBs soon after. Ben is an expert in EDA with Altium, Protel, CircuitMaker and CircuitStudio and has a Bachelor of Engineering (CompSys) Hon I. from the University of Southern Queensland, Australia. He is an IPC-CID+ certified PCB designer, and makes training videos for Altium Academy.
      • 8
        design
      • 8
        usability
      • 7
        creativity
      • 9
        content
      8.00
    • DarkoPatic from SERBIA, REPUBLIC OF
      My name is Darko Patic. I am from Serbia. I make PCB boards and finished electronic devices. From white paper to the finished product, I make and assemble everything myself. Mostly I make measuring instruments. I am a Master Engineer in Industrial Engineering
      • 10
        design
      • 10
        usability
      • 10
        creativity
      • 10
        content
      10.00
    • www.cursoderobotica.com
      • 7
        design
      • 7
        usability
      • 7
        creativity
      • 7
        content
      7.00
    • Jorge from SPAIN
      maker. I like to build things, to understand how things work. Co-founder of Ripolab Hacklab, a non-profit organization to explain the culture maker
      • 7
        design
      • 8
        usability
      • 8
        creativity
      • 6
        content
      7.25
    • Inventor of TV-B-Gone, a keychain that turns off TVs in public places. Co-founder of 3ware, a successful Silicon Valley startup in the 1990s. Pioneer of Virtual Reality in the 1980s. Author and teacher. I go around the world giving talks and workshops. Promoter of hackerspaces, open source hardware. Mentor for others wherever I goes. Co-founder of Noisebridge hackerspace in San Francisco. President and CEO of Cornfield Electronics. http://en.wikipedia.org/wiki/Mitch_Altman
      • 7
        design
      • 7
        usability
      • 7
        creativity
      • 6
        content
      6.75
    • Emre KONCA from TURKEY
      I'm system engineer. https://www.youtube.com/ArduinoHaberTV
      • 10
        design
      • 9
        usability
      • 10
        creativity
      • 9
        content
      9.50
    • C64iSTANBUL from TURKEY
      E-mail: c64istanbul@bikom.com
      • 10
        design
      • 10
        usability
      • 10
        creativity
      • 10
        content
      10.00
    • Settorezero from ITALY
      I'm a maker from Italy. My blog is https://www.settorezero.com
      • 10
        design
      • 10
        usability
      • 10
        creativity
      • 10
        content
      10.00
    • Engineer from
      • 10
        design
      • 10
        usability
      • 10
        creativity
      • 10
        content
      10.00
    • Engineer from
      • 10
        design
      • 10
        usability
      • 10
        creativity
      • 10
        content
      10.00
    • Engineer from
      • 10
        design
      • 10
        usability
      • 10
        creativity
      • 10
        content
      10.00
    • Engineer from
      • 10
        design
      • 10
        usability
      • 10
        creativity
      • 10
        content
      10.00
    • Engineer from
      • 10
        design
      • 10
        usability
      • 10
        creativity
      • 10
        content
      10.00
    • PPZ from
      • 10
        design
      • 10
        usability
      • 10
        creativity
      • 10
        content
      10.00
    • Josip Basic from CROATIA
      • 10
        design
      • 10
        usability
      • 10
        creativity
      • 10
        content
      10.00
    • Goran Strangaric from SERBIA, REPUBLIC OF
      • 10
        design
      • 10
        usability
      • 10
        creativity
      • 10
        content
      10.00
    • Uros Colovic from SERBIA, REPUBLIC OF
      • 10
        design
      • 10
        usability
      • 10
        creativity
      • 10
        content
      10.00