Documente online.
Zona de administrare documente. Fisierele tale
Am uitat parola x Creaza cont nou
 HomeExploreaza
upload
Upload




A26 - An Atari 2600 Emulator

technical


A26 - An Atari 2600 Emulator

============================

Paul Robson ([email protected])

Why another 2600 emulator ? Well - for me there were two reasons :-

(1) None of those available would run reasonably on my machine (486DX2/75)



(2) I felt like doing it !

This emulator is written entirely in assembler (A86) and is under 22k long.

This is a beta version (or release 2.0 as Microsoft would put it !)

but it seems to work fairly well with the few cartridges I've tested it with.

There are several bugs fixed since 0.1 which means that most games I've trieds

seem to at least start. Chess and Othello don't work (don't know why yet). The

8 and 16k ROM emulation seems erratic. Somethings work fine,some don't work at

all and I don't know why - if the emu is correct they should all work a bit

or all fail.

Note that only images that support the F8 bank switching (8k) and F6 bank

switching (16k) are supported (yet). This seems to be quite a lot of them !

Main plus points :-

Its free. You can do what you like with it EXCEPT sell it.

( However please mail me with comments,suggestions,bugs etc.

If your favourite game doesn't work,tell me about it and I can

try to fix it !)

Goes like stink !

Controls :-

Player 1 : Arrow keys & right alt

Player 2 : Z X C F G

Reset : F1

Select : F2

Quit : Esc

To start it :-

===========

A26 <-0> <-1> <-b> <-m#> <-s> <-v> <-u#> <-l#> <-j> <-h>

<-f#> <-t#> <-c#> <-q#> <-p> <cartridge>

e.g. A26 -m# -s -u40 -l192 -f3 -t7 combat.bin

If no cartridge name is included the color demo program is run (see lots of

2600 sites for the source for this)

Difficulty (-0 -1)

==================

Set the difficulty to hard for player 0 or player 1

Black and white (-b)

====================

Set black and white mode

Mid line collisions (-m#)

=========================

Does full midline collision when (scanline and #) is zero.

Small Screen (-s)

=================

Game played on a small screen in the middle of the display

Shrunk Screen (-v)

==================

Game played on normal size screen,but one line in 8 isn't displayed

(to give a 225 line screen on a 320x200 display)

Scanline bound (-l# -u#)

========================

Set the lower and upper bounds of the scan line on the screen

Latching (-h)

=============

Disables the a26 latching feature which was causing problems.

Joysticks (-j)

==============

Use a PC Joystick in place of P1 keys. (One only). The paddle should be

centred on starting a26 to get accurate calibration.

Time Control (-t#)

==================

This specifies the number of frames that are drawn in an IBM Clock tick (there

are 18.2 Clock ticks a second). The default is 3,giving a standard running

speed of 55fps. To run it flat out,set -t99

Frame skipping (-f#)

====================

In an attempt to speed some games up it is possible to skip frame updates.

This can be any number so it is possible to skip 4 frames in 5 by doing -f4

Sound Control [PC Speaker] (-c# -q#)

====================================

-c# sets the channel that is going to be played on the PC Speaker. 0 plays

channel 1 only,1 plays channel 0 only,2 plays both. Basically, the 2600 has 2

channels of sound, with noise, and 16 volume levels. A PC can beep and be

either on or off !

-q# sets the volume level below which no sound is played on the PC Speaker

-q16 shuts it up completely.

Paddles (-p)

============

The left/right/fire keys control the paddles. Used for breakout and a few

others.

Speeds :-

Tested on my kludge 486DX2/75 these figures are for complete updates (no

frame skipping)

Activision Tennis 43 fps

Combat 111 fps

Pacman 75 fps

Space Invaders 26 fps

Frogs'n'Flies 23 fps

Freeway 37 fps (doesn't work uses midline coll)

Pitfall 40 fps

Examples of changing the frame skip rate on Frogs'n'Flies .....

-f0 (default) 23 fps

-f1 (every other one) 36 fps

-f3 (3 out of 4) 51 fps

-f7 (7 out of 8) 64 fps (jerky now !)

-f15 (1 out of 16) 73 fps (very jerky !)

Note : these speeds were calculated on v0.1 of A26, so they'll now be

a bit different (probably a bit slower)

Thanks to the authors of stella and vcs, without whose source code I would

have been stuck. (I used it to check operation ALL the code is original)

Notes: Othello & Checkers won't work because of compromises I make to get

speed. There are probably other games in this category.

Spiderman doesn't work either - and it does something very wierd..

If you get a message 1234@42 in the top left corner its a signal

from the CPU emulator that its come across an illegal opcode. I

would be grateful if you would EMail me about any cartridge that

does this.

Paul Robson.

Fixes

0.0 (13-Aug-96) Project Started

0.1 (23-Aug-96) First release

0.11 (26-Aug-96) Second release

Fixed indexing bug.

Fixed jsr/ret bug (affecting Gauntlet)

Fixed sbc decimal (affecting Keystone Kops,requested)

Better display when bad opcode encountered

Timer initially frozen (affecting Boxing,Berzerk and others...)

Added (adjustable) speed control

New banner

Upper & Lower bounds on displayed scan line (requested)

Added Atari 8k Cartridge support (F8 type only)

Added Atari 16k Cartridge support (F6 type only)

(Note : the 16k emulation seems to be fairly ropey !)

Mid line collision testing (fixes freeway)

0.12 (27-8-96) Third release

Added shrunk screen option (1 in 8 lines missing)

Added PC Speaker sound. (its really dire !)

(Sound card support to be added when I find my SB Book)

Fire buttons now latch if game supports it.

Fixed brk bug

Optimised page zero/page 1 accesses for the 6507 CPU

Paddle code added

Difficulty levels and black & white switches added.

2 weeks old today !!

0.13 (29-8-96) Fourth Release

Fixed latching fire buttons bug (affected Donkey Kong at least)

Added PC joystick stuff. (One supported only)

Freeway collision problems fixed but problems with generation ?

Sound might be a bit better (very slightly).

0.14 (30-8-96) Fifth Release

Latching can now be disabled if its a pain (which it is)

Joysticks still don't work properly.

0.15 (2-9-96) Sixth Release

Externally calibrated joystick

TXS bug (doesn't set NZ flags)


Document Info


Accesari: 1996
Apreciat: hand-up

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site


in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate | Termenii si conditii de utilizare




Copyright © Contact (SCRIGROUP Int. 2024 )