Changes

Jump to: navigation, search

Aleste 520EX

3,413 bytes added, 10:28, 3 February 2010
* [[Media:Aleste-Programming-Manual-English.txt]] - original programming manual (english version, ported to ASCII format)
 
== Technical ==
 
 
{|{{Prettytable|width: 700px; font-size: 2em;}}
|'''I/O'''||'''Decoded as'''||'''Port'''||'''Read'''||'''Write'''
|-
|#7CXX||%0xxxxx00 xxxxxxxx||Mapper page 0 (note 1)]||Read||Write
|-
|#7DXX||%0xxxxx01 xxxxxxxx||Mapper page 1 (note 1)||Read||Write
|-
|#7EXX||%0xxxxx10 xxxxxxxx||Mapper page 2 (note 1)||Read||Write
|-
|#7FXX||%0xxxxx11 xxxxxxxx||Mapper page 3 (note 1)||Read||Write
|-
|#7CXX||%0xxxxxxx xxxxxxxx||Multiport (note 3)]||-||Write
|-
|#BCXX||%x0xxxx00 xxxxxxxx||6845 [[CRTC]] Index|| - ||Write
|-
|#BDXX||%x0xxxx01 xxxxxxxx||6845 [[CRTC]] Data Out|| - ||Write
|-
|#BEXX||%x0xxxx10 xxxxxxxx||6845 [[CRTC]] Status (as far as supported)||Read|| -
|-
|#BFXX||%x0xxxx11 xxxxxxxx||6845 [[CRTC]] Data In (as far as supported)||Read|| -
|-
|#DFXX||%xx0xxxxx xxxxxxxx||[[Upper ROM Bank Number (note 9)]]|| - ||Write
|-
|#F4XX||%xxxx0x00 xxxxxxxx||[[8255]] PIO Port A (PSG/8253 Timer/Real-Time Clock data)||Read||Write
|-
|#F5XX||%xxxx0x01 xxxxxxxx||[[8255]] PIO Port B (Vsync,[[Printer Port|PrnBusy]],Tape,etc.)||Read|| -
|-
|#F6XX||%xxxx0x10 xxxxxxxx||[[8255]] PIO Port C (KeybRow, Real-Time-Clock control,,Tape,[[PSG]] Control)|| - ||Write
|-
|#F7XX||%xxxx0x11 xxxxxxxx||[[8255]] PIO Control-Register|| - ||Write
|-
|#FA7E||%xxxxx0x0 0xxxxxxx||Floppy Motor Control (for [[765 FDC]])|| - ||Write
|-
|#FABF||%xxxxx0x0 1xxxxxxx||EXTPORT (note 10)|| - ||Write
|-
|#FB7E||%xxxxx0x1 0xxxxxx0||[[765 FDC]] (internal) Status Register||Read|| -
|-
|#FB7F||%xxxxx0x1 0xxxxxx1||[[765 FDC]] (internal) Data Register||Read||Write
|}
 
1.Mapper bits 7 and 6 of the data must be 1 for the Mapper write.
2.Printer data-bits are connected to AY I/O port B.
3. Multiport is similar to the Gate-Array in cpc.
{|{{Prettytable|width: 700px; font-size: 2em;}}
|''bit 7'''||''bit 6'''||Action
|-
|0||0||Pen index write (note 5)
|-
|0||1||Pen ink write (note 6)
|-
|1||0||Mode, Rom enable, Leds (note 7)
|-
|1||1||Used by mapper
|-
|}
5. If bit 3 is set, border is selected. Otherwise bits 3..0 define the pen index.
6. The number is converted by IC D62. When MAPPER is set in EXTPORT, then the numbers effectively define R,G,B with 2 bits per element, but the rom then changes the order of the bits before it gets to the hardware.
When MAPPER is not set, the number is equivalent to the CPC's Gate-Array colour value, but this is looked up in IC D62 and converted into a 2-bit per element R,G,B for the aleste video hardware.
7. bit 0,1 define the mode. The actual resolution is then dependant on bit 1 of EXTPORT.
8. bit 2 is the enable/disable for the lower rom. bit 3 is the enable/disable for the upper rom. bit 4 defines the RUS led. bit 5 defines the CAPS led.
9. The number is looked up in IC and converted into another number which is the 16K page index in the Aleste's internal 64k ROM.
10. bit 2 = enable/disable MAPMOD (changes how colour is decoded and how mapper values are decoded), bit 3 = force video to black, bit 4 = Enable 8253 timer. Any I/O write then accesses 8253 with data comming from 8255 port A. Bit A0/A1 of I/O port defines 8253 register, bit 5 = if 0, then AY is accessed when read/write to 8255 port A, if 1 then real-time clock is accessed with read/write to 8255 port A. When real-time clock is selected, bits 3..0 of PPI port C are used to define real-time clock operation. DS bit 2, AS bit 1, R/W bit 0. So combinations are 2, write address, 4 write data, 5 read data.
 
 
== Technical specs ==
2,541
edits