;note also test for dexti (decoder immediate extend (used for est)) ;********************************************************************* ; includes ;********************************************************************* .incdir "F:\git\goldmomo_endlos\assembler_files\ucore\" .include "include\ucore_ctrl.i" ;********************************************************************* ; sd header is placed here ;********************************************************************* .include "boot_level_sdHeader.s" ;********************************************************************* ;* start at address 32 here ;********************************************************************* .def picDataRAMDest $d0000000 start cli ;setup video (720x450x32) gpci r7,2 ;next 4 + X br setupVideo nop ;delay slot nop ;delay slot nop ;delay slot nop ;delay slot loop ;fill with pattern gpci r7,2 br makePattern movei r6,>>picDataRAMDest ;delay slot movei r5,picDataRAMDest ;delay slot moveih r6,>>>picDataRAMDest ;delay slot moveih r5,>picDataRAMDest ;delay slot ; br loop nop ;delay slot nop ;delay slot nop ;delay slot nop ;delay slot ;****************************** ;* ;* makePattern ;* ;* r6:r5 dest ;* makePattern dexti $ff movei r1,$ff dexti $ff movei r2,$ff dexti 3 movei r3,$83 ;y yLoop movei r4,89 ;1440/16-1 pixel xLoop ;16 pixel esadr r6,r5 addi r5,8 addtqi r6,r6,0 est r1,0 ;low est r1,1 ;high est r1,2 ;low est r1,3 ;high est r1,4 ;low est r1,5 ;high est r1,6 ;low est r1,7 ;high esadr r6,r5 addi r5,8 addtqi r6,r6,0 est r1,0 ;low est r1,1 ;high est r1,2 ;low est r1,3 ;high est r1,4 ;low est r1,5 ;high est r1,6 ;low est r1,7 ;high esadr r6,r5 addi r5,8 addtqi r6,r6,0 est r1,0 ;low est r1,1 ;high est r1,2 ;low est r1,3 ;high est r1,4 ;low est r1,5 ;high est r1,6 ;low est r1,7 ;high esadr r6,r5 addi r5,8 addtqi r6,r6,0 est r1,0 ;low est r1,1 ;high est r1,2 ;low est r1,3 ;high est r1,4 ;low subi r4,1 brts xLoop est r1,5 ;high ;delay slot est r1,6 ;low ;delay slot est r1,7 ;high ;delay slot xor r1,r1,r2 ;delay slot movei r0,$f nop and r0,r3,r0 nop cmpeqi r0,$0 xorts r1,r2 subi r3,1 brts yLoop nop ;delay slot nop ;delay slot nop ;delay slot nop ;delay slot jmpi r7,0 nop ;delay slot nop ;delay slot nop ;delay slot nop ;delay slot ;****************************** ;* ;* setupVideo ;* setupVideo movei r0,videoDefault ;source movei r1,UcTimer2Ctrl ;dest-1 moveih r0,>videoDefault moveih r1,>UcTimer2Ctrl movei r2,26 ;27-1 setupVideoLoop rqldi r0,0 addi r0,1 addi r1,1 ld r3 subi r2,1 brts setupVideoLoop st r1,r3 ;delay slot nop ;delay slot nop ;delay slot nop ;delay slot jmpi r7,0 nop ;delay slot nop ;delay slot nop ;delay slot nop ;delay slot ;********************************************************************* ;* data ;********************************************************************* videoDefault ;AD NAME word $0001 ;10 VIDEO_ON 1 (ON) word $0097 ;11 HSYNC (D = 11 .. 0) 152-1 word $017f ;12 HSTART (D = 11 .. 0) 384-1 word $017d ;13 HMEMSTART (D = 11 .. 0) 382-1 word $071f ;14 HSTOP (D = 11 .. 0) 1824-1 word $076f ;15 HTOTAL (D = 11 .. 0) 1904-1 word $0002 ;16 VSYNC (D = 10 .. 0) 3-1 word $001e ;17 VSTART (D = 10 .. 0) 31-1 word $03a2 ;18 VSTOP (D = 10 .. 0) 931-1 word $03a3 ;19 VTOTAL (D = 10 .. 0) 932-1 word $0000 ;1a LC ADDER LOW $0000 word $0100 ;1b LC ADDER HIGH $0040 word $0000 ;1c LC ADDER LATCH X word $0000 ;1d LC START (10 .. 0) Pixeloffset $0000 word $0000 ;1e X word $0000 ;1f X word $0008 ;20 HLOADSTART 8 word $05a8 ;21 HLOADSTOP 180+8 word $001e ;22 VLOADSTART 31-1 word $03a2 ;23 VLOADSTOP 931-1 word $0001 ;24 VLOADNEXT 4 word $0000 ;25 MEM_STARTADR_store low $0000 word $d000 ;26 MEM_STARTADR_store high $d000 word $0000 ;27 MEM_LINEOFFSET_store low $0000 word $0000 ;28 MEM_LINEOFFSET_store high $0000 word $0000 ;29 MEM_MODE_store 32 Bit word $0000 ;2a LATCH MEM_STARTADR/LINEOFFSET/MODE X