Path: utzoo!mnetor!uunet!husc6!mailrus!ames!lll-tis!oodis01!uplherc!sp7040!obie!wes From: wes@obie.UUCP (Barnacle Wes) Newsgroups: comp.sys.atari.st Subject: Re: Writing to the cartridge port. Message-ID: <166@obie.UUCP> Date: 23 Apr 88 19:39:12 GMT References: <8804132155.AA23202@ucbvax.Berkeley.EDU> <542@csvax.liv.ac.uk> Organization: the Well of Souls Lines: 40 Summary: Writing to cartridge port can be done... That's how you set the battery clocks, etc. In article <542@csvax.liv.ac.uk>, unpowell@csvax.liv.ac.uk writes: > In article <8804132155.AA23202@ucbvax.Berkeley.EDU>, 440488@UOTTAWA.BITNET (Doctor Who) writes: > > megabyte of ram that plugs into the cartridge port. > > But according to the infamous Abacus book ST Internals, (p96) writing > > to this address creates a bus error. They tried putting a ram disk in > > the port but without sucess. > > > > How did Alpha get around this so that the Megadisk would work with > > out creating bus errors? > > Who knows? One Meg seems a little optomistic as the ST only has > 128K of address space available for the cartridge port. Where will this > extra memory go? First, how to write to the cartridge port: You fake it by assigning one of the address lines as a read/write line. This, of course, halves the amount of memory you can put on it, but that's life. So, whenever you 'read' an address with the high-order address bit set, that tells the logic on the cartridge to grab whats on the bus on the next 'data' cycle and write it to the location specified by the low-order 16 bits of the original address, or some such rot. Second, how to address one meg of data in a ramdisk with only 128K (or 64K with read/write line) of address space: Simple. The Ramdisk doesn't work with addresses, it works with sectors. You send the ramdisk either a 'read sector' or a 'write sector' command, followed by 512 bytes (or whatever your 'sector' size is) of data. You'd probably need a 1-sector buffer on the ramdisk in addition to the memory used for the disk emulator. This would be pretty easy to do as an embedded application with an HD64180 cpu, or something like that. Wes Peters P.S. - Don't ask me the particulars of the interfaces, those are hardware problems. Call an engineer. -- /\ - "Against Stupidity, - {backbones}! /\/\ . /\ - The Gods Themselves - utah-cs!utah-gr! / \/ \/\/ \ - Contend in Vain." - uplherc!sp7040! / U i n T e c h \ - Schiller - obie!wes