Jump to content
IGNORED

What if....Atari 8bit


Recommended Posts

I always wondered if DMA was necessary where the ANTIC had to halt the CPU to grab data for the display. How did other video chips like the VIC II & VIC III do it without halting the CPU?

By having a 1 MHz CPU connected to a 2 MHz bus.

 

Could Atari use the same trick as the other video chips had done?

Ofcourse, by reducing the 1.8 MHz CPU clock to 0.9 MHz.

Link to comment
Share on other sites

That does explain how Commodore did it. Does point out why the Atari 8-bit series still ran much faster than any 1mhz 6502 based computer. Even with DMA enabled for Antic + Player Missile Graphics + Overscan, it still executed instructions much faster. Don't think it could get burden down to where its running an equivalent 1 mhz. I estimated with my multiplexer routines that get more sprites, it still had a lot of time remaining during its VBI routine.

Link to comment
Share on other sites

Pretty sure the C64 stalls the CPU when fetching the screen. It has "Badlines" at the start of each character line, each sprite steals some clocks from the cpu on every line it's displayed etc Not sure if it's to the same extent as the A8 but it certainly does steal clocks per line.

 

 

Pete

Link to comment
Share on other sites

In my 'what if' there would never be a 7800. Instead, have a G7000 style atari 400 replacement as a console. ( or a 16kB XEGS styled machine ) - place a security check in the BIOS , to ensure 'licensed' titles on cartridge. Sell a 'OS cart' with Basic/OS-B to allow disc/tape games, and have GCC write arcade games for this console.

To save costs - have no PIA's in the system, but use a RIOT instead ( mapped to PIA address )- and have a cheap 2600 adaptor ( basically TIA in a cart :) )

 

Having TIA onboard wouldn't necessaruly be bad either, at very least you'd have the extra audio available. (you could have a single chip TIA+RIOT too, not too much point while there are stockpiles of chips though) Then just have a passive (or mostly passive, but additional switches) adaptor for the cartridges. (this assuming you couldn't use 7800 style carts, with 32-pins possibly not enough for what the 400/800 cart connectors included)

 

Having RIOT onboard would avoid sending the joystick lines to the cartridge, and it would be replacing a PIA ( I dont know if there would be much price difference between the 2 chips ) TIA would only be for 2600 games.

( If Antic/GTIA were redesigned - then a 'TIA mode' could be included.. but I think a cart adapter would have been good enough )

Well, for a TIA compatibility mode on GTIA, don't forget you'd need to add the sound circuitry as well, and the cartridge adaptor would need to activate a 1.19 MHz mode for the system. (and if you wanted a simple TIA cart, you'd need to include 2600 compatible switches on the main unit, also, don't forget TIA read the pots and fire buttons as well iirc, so it wouldn't be that simple)

With TIA onboard you could use the added sound channels for games specifically taking advantage of this (probably set-up like the 7800, with the CPU dropping to 1.19 MHz while accessing TIA), but also, it would solve the cont ollerich I hadn't considdered until you mentioned the RIOT configuration) as you'd need the fire buttons and pot lines hooked up to TIA as well for that to work. (still using POKEY for pots outside of 2600 mode as iirc the way TIA reads the pots isn't satisfactory when not "chacing the beam" while POKEY works as an ADC for the pots more or less, I think) If using 7800 style 32-pin cartridges would have worked, you could even have out of the box compatibility with 2600 cartridges and accessories.

 

Another thing to possibly considder is additional buttons, while this obviously wouldn't matter for games meant for the 400/800 using single button joysticks, it would be a nice feature, as the single button is rather limiting. You should be able to configure the pot lines as additional buttons, giving a total of 3. (this wouldn't be necessarily limited ot eh new console either, it should be possible to do this on the 8-bit and 2600 as well, with sotware utilizing it of course -and controllers released as an accessory) You could also use the pots for an analog joystick (or even a psudo digital one with fixed voltage imputs to the pots), which could then have up to 5 buttions, but this would be incompatible with the standard digitall joysticks. (while the previosu one would be compatible, just with 2 additional buttons to be taken advantage of)

 

Also, I wonder if there's any use for RIOT's 128 bytes of SRAM, again it would only be for system specific games (not direct ports from the 8-bitters), but still in interesting though, not really sure how much use that would be though.

 

I always wondered if DMA was necessary where the ANTIC had to halt the CPU to grab data for the display. How did other video chips like the VIC II & VIC III do it without halting the CPU? Could Atari use the same trick as the other video chips had done?

 

While the commodore computer comment has already been addressed, there's also another thing to note, that's the FREDDIE chip used in the late model 8-bitters which, in combination with a MMU, allowed Sally (6502C) and ANTIC to access RAM independently. But that wasn't until later. (so not part of a 1982 console)

Edited by kool kitty89
Link to comment
Share on other sites

Personally, I wouldn't have bothered with backward compatability. At best, maybe a plug in adaptor.

 

The silicon would have been much better devoted to other enhancements, then again in 1981/2 even 2600s were still relatively expensive so the main idea probably would have been to go minimal for a cheap system.

 

"Independant" RAM access isn't quite the bonus it sounds... Antic still locks out the CPU regardless of where it's fetching from.

 

A FastRAM/ChipRAM setup like the Amiga might have been nice, but then again on the Atari you want Antic to be able to see at least 128K of the map.

Link to comment
Share on other sites

Well, all these parts should be stockpiled to a good degree anyway, sou you'd be putting them in this 5200 alternative instead of the 8-bitters or 2600's. (then again, with what'd described above, you'd have extra PIA and 6507 chips floating around, balancing production later on could solve this though, at least for the 6507's, the PIA could depend more on the populartity of the 8-bit line)

 

Having onboard comaptibility wouldn't necessarily add too much to cost, significantly less than producing a seperate add-on (with its own circuit board, switches, and depending on how it's interfaced, controller ports, and maybe even CPU -what was the historical 2600-5200 adaptor like inside?), and you would have some use of the 2600 chipset. (possibly replace PIA with RIOT as suggested and TIA's sound, and maybe some use for RIOT's RAM)

If they could have used a 7800 style cartridge connector, it would probably be a good option, otherwise you'd still have to at least have a passive adaptor to plug in, and you'd need to take it out to play the new games. (like the Power Base Converter for the Genesis) In which case you might as well simplify things and go straight for the 8-bit's chipset and an adaptor arranged like the ColecoVision, so it wouldn't monopolize the cart slot. (preferably using the 6502c rather than a 6507 on the adaptor)

Link to comment
Share on other sites

Pretty sure the C64 stalls the CPU when fetching the screen. It has "Badlines" at the start of each character line, each sprite steals some clocks from the cpu on every line it's displayed etc Not sure if it's to the same extent as the A8 but it certainly does steal clocks per line.

The Atari has badlines too... in the character modes. The 2 MHz bus of the C64 hides the majority of DMA cycles, so the DMA load is much heavier on Atari. Ofcourse the Atari is still faster but not that much as comparing MHz would make you think.

Link to comment
Share on other sites

Pretty sure the C64 stalls the CPU when fetching the screen. It has "Badlines" at the start of each character line, each sprite steals some clocks from the cpu on every line it's displayed etc Not sure if it's to the same extent as the A8 but it certainly does steal clocks per line.

The Atari has badlines too... in the character modes. The 2 MHz bus of the C64 hides the majority of DMA cycles, so the DMA load is much heavier on Atari. Ofcourse the Atari is still faster but not that much as comparing MHz would make you think.

 

Yeah, I haven't done my own tests yet but did glean from another thread that the Atari's cycle stealing was quite bad (hence being able to turn off the DMAs if you want I presume). I'm sure by the time I'm done porting this game I'll have realised just how bad it is :)

 

 

Pete

Link to comment
Share on other sites

Well, all these parts should be stockpiled to a good degree anyway, sou you'd be putting them in this 5200 alternative instead of the 8-bitters or 2600's. (then again, with what'd described above, you'd have extra PIA and 6507 chips floating around, balancing production later on could solve this though, at least for the 6507's, the PIA could depend more on the populartity of the 8-bit line)

 

Having onboard comaptibility wouldn't necessarily add too much to cost, significantly less than producing a seperate add-on (with its own circuit board, switches, and depending on how it's interfaced, controller ports, and maybe even CPU -what was the historical 2600-5200 adaptor like inside?), and you would have some use of the 2600 chipset. (possibly replace PIA with RIOT as suggested and TIA's sound, and maybe some use for RIOT's RAM)

If they could have used a 7800 style cartridge connector, it would probably be a good option, otherwise you'd still have to at least have a passive adaptor to plug in, and you'd need to take it out to play the new games. (like the Power Base Converter for the Genesis) In which case you might as well simplify things and go straight for the 8-bit's chipset and an adaptor arranged like the ColecoVision, so it wouldn't monopolize the cart slot. (preferably using the 6502c rather than a 6507 on the adaptor)

 

A separate add-on would be sold for more money - so the incremental cost is less important. A TIA is completely redundant on the console - as it's duplicating a large amount of functionality given by GTIA/POKEY. It's probally way cheaper to route the trigger lines onto a cartridge - or move TIA compatibility into a GTIA+

Link to comment
Share on other sites

That does explain how Commodore did it. Does point out why the Atari 8-bit series still ran much faster than any 1mhz 6502 based computer.

 

The A8 just seemed slow because of the terrible Basic floating point routines. I remember the first time I played with TurboBasic. It was a revelation.

 

Disabling ANTIC does speed up the A8 quite a bit. Bob Puff's arcer/unarcer routine was a good case of that, where it disabled everything but a one line text strip.

Link to comment
Share on other sites

I started off with Atari Basic, Basic XE, and Turbo Basic XL. I could see the progression in speed. I can say with Turbo Basic XL, the only way to go faster is move up to a PC or other 16/32 bit machine. With all my recent experience with Assembler Language, I can see where the A8 is much faster. I agree with the ANTIC disabled along with VBIs, the A8 can process pretty fast. In the period when they were first release, it takes a PC XT at 8 mhz to process significantly faster. Some say the 6502 can execute instructions in less cycles than the first 8088 processors.

 

Even when I was still using Basic, I started using ML routines called from USR that I copied out of COMPUTE! magazine. First I saved them in strings, then made a datafile editor that bundled the font, sprites, & ml routines in a 4k block. Bundling Compiled Turbo Basic modules + ML routines bought it up to near pure ML speeds. I suspect Turbo Basic XL is using self modifying code since its all stored in RAM.

 

With everything said, you cannot really compare computers by how fast they run Basic programs, because it does not prove anything relating to the hardware. Depends on how well they wrote the Basic & floating point package. BTW. the 'terrible basic floating point routines' are part of OS, so things like DOS, and some games used those routines as well. Basic XE still used the same routines, TB loads a custom floating point package.

Edited by peteym5
Link to comment
Share on other sites

At the time the XL came out I don't think there was a large enough volume of DRAMs available that ran any faster than 150ns. I don't think a 3.58MHz 6502 can run on 150ns DRAM, at least not going by nominal timings. SRAM cost around 10x as much per byte.

Link to comment
Share on other sites

I dont know about volume - but the BBC model B used 100ns( could use 120ns ) rams ( like HM4816AP-3 , MK4516N or Fujistu MB8118 ) and that was released at the end of 1981.

That had a 2MHz CPU , as Atari used a 1.79MHz 120ns or even 150ns ram may have been ok.

 

This page had a lot of info about the BBC - including the specs for the DRAM used at 4MHz:

 

http://bbc.nvg.org/doc/A%20Hardware%20Guid...uter/bbc_hw.htm

Link to comment
Share on other sites

Which version of the Atari 810 Floppy Drive Mechanism is more powerful?

 

Hah, how can anyone be taken seriously when they fail to mention the third type of mechanism - the flip/jack strip/lock door/hinge "Nonconcentric Cylinders c816" design that was being codeveloped by E. Star Bunhe and Bo Ghiman for Wang until funding was cut and the project cancelled. It was 140% percent complete at the time, and then later bought/borrowed/found by Apple who managed to engineer reverse the extra 40% and later include it in their prototype computer that was stolen from IBM.

Link to comment
Share on other sites

With everything said, you cannot really compare computers by how fast they run Basic programs

 

Unlike today, programming was a major part of computer interaction in the 80s. So BASIC speed did matter. Only a select few graduated to Assembly or ML subroutines. So it did matter as far as the reputation the computer developed in the eyes of the consumer. It was the first thing you'd experience with it in the store displays or when you unpacked it at home.

 

As a finished product, the floating point in the BASIC is probably the A8's biggest weakpoint. Its weird syntax didn't help in porting over type-in programs either. That's why Atari had to release an official Microsoft BASIC, and OSS built a company out of offering better languages.

 

I always felt a little disadvantaged compared to Apple users who had the de facto standard BASIC that was taught in computer classes. I couldn't just take my programs home and run them.

Edited by mos6507
Link to comment
Share on other sites

With everything said, you cannot really compare computers by how fast they run Basic programs

Unlike today, programming was a major part of computer interaction in the 80s. So BASIC speed did matter. Only a select few graduated to Assembly or ML subroutines.

On Atari perhaps. On C64 nearly everyone who was into programming switched to 100% ML.

 

So it did matter as far as the reputation the computer developed in the eyes of the consumer. It was the first thing you'd experience with it in the store displays or when you unpacked it at home.

The first thing most kids experienced was the games they copied from their schoolmates :)

Link to comment
Share on other sites

The first thing most kids experienced was the games they copied from their schoolmates :)

 

Maybe I was weird, then. The first thing I did with my 1200XL was start writing stuff in Basic to open up a graphics mode and start plotting lines at the foot of the X-mas tree. I was using BASIC like a paint program. That's what got me into computers after I had taken a summer computer club course on computer graphics with Apple ][s.

Link to comment
Share on other sites

The first thing most kids experienced was the games they copied from their schoolmates :)

 

Maybe I was weird, then. The first thing I did with my 1200XL was start writing stuff in Basic to open up a graphics mode and start plotting lines at the foot of the X-mas tree. I was using BASIC like a paint program. That's what got me into computers after I had taken a summer computer club course on computer graphics with Apple ][s.

 

Yah, I have to say the exact same thing as far as my experience. Summer school on II+'s, and doing graphics and such. The pirating didn't really come until I got online.

Link to comment
Share on other sites

OMG!!! This nonsense makes my head hurt...

 

 

Gee - I helped develop the 810?!?! Well heck, I was only 12 years old at the time in Jr. High School --- but hey, sounds like somebody owes me a paycheck & interest too!!!

 

There were two versions, because one was sourced from MPI and the other from Tandon.

 

Since when did Tramiel own a friggin disk drive company back in 78-79?!?!? Why would they need to reverse engineer a drive mech that was already being sold in droves by MPI and Tandon?

 

Why does Carmel create these dillusions?

 

The world may never know...

 

 

 

Curt

 

 

 

post-8775-1250012263_thumb.jpg
Edited by Curt Vendel
  • Like 2
Link to comment
Share on other sites

Gee - I helped develop the 810?!?! Well heck, I was only 12 years old at the time in Jr. High School --- but hey, sounds like somebody owes me a paycheck & interest too!!!

 

C'mon! We all know that you were an aging mad-scientist at the time and you later had your brain transplanted into a younger man's body.

 

Now, tell us about how the Nazi's tried to steal the plans for the 410.

  • Like 1
Link to comment
Share on other sites

What if...

 

Carmel perfected the time machine he's working on and takes back all the new atari software tech that has come out over the last 15 years to save Atari with his unmeasurable genius from the ruthless business tactics of McDonald's?

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...