Changes

Jump to: navigation, search

Maplins Weather Satellite Receiver

1,129 bytes added, 11:44, 8 September 2014
The recommended I/O address (used in the CPC example source code) is Port F8F0h (ie. shorten Link 1 on the [[Maplins 8bit Input Port]]).
 
Bit7 Dotclock (probably derived from E.O.C.) (end of ADC conversion)
Bit6 Sync (used as hsync) (the sample program doesn't seem to do any vsync handling?)
Bit5-4 Unknown/unused
Bit3-0 Luminance
The decoder outputs some control signals and an 8bit luminance signal. That data can't be squeezed through the 8bit input port, so some of the luminance bits are left unconnected (the CPC's color palette couldn't display them anyways).
== Source Code ==
 
Here is a commented version of the original sample code...
 
--- basic code ---
 
5 MEMORY 30000:MODE 2
10 LOAD"wefax1.obj"
20 INPUT "enter horizontal resolution 1-4";resh
30 IF resh>0 AND resh<5 THEN POKE <resmod>,resh ELSE CLS:GOTO 20
40 CALL <entryoint>
50 CALL <rerun>
60 GOTO 50
 
--- asm code ---
io_port equ 0F8F0h
call 0BD19h ;MC_WAIT_FLYBACK
call 0BD19h ;MC_WAIT_FLYBACK
loop1: ;--- y loop ---
di
ld bc,io_port
dec d ;
jr nz,delay ;/
loop2: ;--- x loop ---
di
resmod equ $+1 ;\horizontal resolution ld d,2 ;<-- MODIFIED (1..4) ;/
ld bc,io_port
smpl: ;\
plot: ;
ld [hl],a ;/
ld bc,0001h ;\ ld hl,[xreg] ; or a ;cy=0 ; sbc hl,bc ; next x jr c,nexy ; ld [xreg],hl ; jp loop2 ;/ nexy: ;\ ld hl,160-1 ; ld [xreg],hl ; ld hl,[yreg] ; or a ;cy=0 ; sbc hl,bc ; next y jr nc,newlin ; ei ;frame done ; ret ;return to basic ; newlin: ; ld [yreg],hl ; jp loop1 ;/
bytead: ;color palette (increasing luminance on green monitor)
db 0,1,2,4, 5,6,8,10, 12,14,16,18, 20,22,24,26
* Weather Satellite Down Converter – Part 2 - project 23 (not yet scanned, does somebody have it on paper?)
* Weather Satellite Prediction Table - project 24 (not yet scanned, does somebody have it on paper?)
 
[[Category:Peripherals]]