; Call an IP program to downlink 1 image ; BRANCHEQ R0032 3 &LBIC3 BRANCHEQ R0032 4 &LBIC4 BRANCHEQ R0032 5 &LBIC5 END ; ;================================================= ; lbic 3 (extract standard 1024x1024 filtergram ; from memory 0) ;================================================= ; Address of 1st pixel to be extracted = 252 + 1040 + 8 = 1300 ; LBIC3: SETREGS R0168 2 0 0 SETREGS R0176 8 0:0x00514 7:0x00000 1024 1024 1040 R0168 ; SETREGS R3576 2 0xFFFF 0xFF14 EXTRACT R0176 SETREGS R3570 2 0x100000L GOTO &DOHR END ; ;================================================= ; lbic 4 (extract central 256x256 area from ; memory 0) ;================================================= ; Address of 1st pixel to be extracted ; = Header(252) + Eng_line(1040) + ; skip 384 rows (384 X 1040) + ; BLS(8) + skip 384 columns (384) ; = 401044 (0x61E94) ; LBIC4: SETREGS R0168 2 0 0 SETREGS R0176 8 0:0x61E94 7:0x00000 256 256 1040 R0168 ; SETREGS R3576 2 0xFFFF 0xFF13 EXTRACT R0176 SETREGS R3570 2 0x10000L GOTO &DOHR END ; ; ;================================================= ; lbic 5 (4x4 Sum of a single image in memory 0 ;================================================= ; IP Program to perform 4x4 summing ; Memory Page Usage: ; 0 - Raw Camera Image ; 4 - Extracted 1024x1024 image ; 5 - 1024x256 rowbinned image ; 6 - 256 x 256 lrbinned image ; 8 - Downlink page ; ; LBIC5: SETREGS R0168 2 0 0 ; ; EXTRACT R816 ; Source Address 0:0x00514 ; Destination Address 4:0x00000 ; X-Length 1024 ; Y-Length 1024 ; Row Length 1040 ; Global Offset Register R168 ; SETREGS R816 8 0:0x00514 4:0x00000 1024 1024 1040 R0168 EXTRACT R816 ; ; ; ROWBIN R800 ; Source Address 4:0x00000 ; Destination Address 5:0x00000 ; X-Length 1024 ; Y-Length 4 ; Row Length 1024 ; Repeat Count 256 ; Shift Factor 16 ; Scale Factor 1 ; Global Offset Register R168 ; SETREGS R800 11 4:0x00000 5:0x00000 1024 4 1024 256 16 1 R0168 ROWBIN R800 ; ;.................................................... ; LRBIN LIST ; Start Address Low 0 ; Start Address High 0 ; X Length 4 ; Repeat Count 2048 ; Shift Count 14 ; Scale Factor 1 ; ; Start Address Low 8192 ; Start Address High 0 ; X Length 4 ; Repeat Count 2048 ; Shift Count 14 ; Scale Factor 1 ; ; Start Address Low 16384 ; Start Address High 0 ; X Length 4 ; Repeat Count 2048 ; Shift Count 14 ; Scale Factor 1 ; ; Start Address Low 24576 ; Start Address High 0 ; X Length 4 ; Repeat Count 2048 ; Shift Count 14 ; Scale Factor 1 ;.................................................... ; ; Linear Rebin ; ; LRBIN R0176 ; Source Page 5 ; Destination Address 6:0x00000 ; List Pointer 0 ; List Count 4 ; List Address 17:0x00000 ; Global Offset Register R2560 ; ; SETREGS R0168 2 0 0 SETREGS R0170 2 0x8000 0 SETREGS R0176 3 0x2800 6:0x00000 ; RPT: SETREGS R0179 5 0 4 17:0xFFE00 R0168 LRBIN R0176 ADDADR R0168 R0170 R0172 ; New Offset COPYREG R0172 R0168 COPYREG R0173 R0169 BRANCHNE R0178 0x3001 &RPT ; SETREGS R3576 2 0xFFFF 0xFF12 MOVBLK 6:0x00000 7:0x00000 0x10000L SETREGS R3570 2 0x10000L ; ;.................................................... ; DOHR: ; BRANCHIF R3077 &DONE ; AVGTEMPS 0:0x00134 12 SETREGS R3566 2 7:0x00000 ; BRANCHEQ R33 0 &TLM0 ; TLM1: SETREGS R3568 2 12:0x00226 _MOVBLKI R3566 ; SETREGS R3572 3 0:0x00001 0x6000 COPYREG R61 R3575 HRDINIT R3572 START1HR 3 0x6000 R3570 ; TLM0: SETREGS R3568 2 8:0x00226 _MOVBLKI R3566 ; SETREGS R3572 3 0:0x00001 0x4000 COPYREG R61 R3575 HRDINIT R3572 START1HR 3 0x4000 R3570 ; DONE: END ;=============================================================