comparison code_part1/OSTC_code_asm_part1/menu_logbook.asm @ 146:c09b0be2e1e6

PIXEL_WRITE macros. + obey win_flip_screen flag.
author JeanDo
date Sun, 09 Jan 2011 14:39:09 +0100
parents 8b75ba28d641
children a1960295433b
comparison
equal deleted inserted replaced
145:8bda2452a532 146:c09b0be2e1e6
489 movlw d'5' 489 movlw d'5'
490 movwf timeout_counter3 ; here: used as colum x2 (Start at Colum 5) 490 movwf timeout_counter3 ; here: used as colum x2 (Start at Colum 5)
491 movlw d'75' ; Zero-m row 491 movlw d'75' ; Zero-m row
492 movwf apnoe_mins ; here: used for fill between rows 492 movwf apnoe_mins ; here: used for fill between rows
493 incf timeout_counter3,W ; Init Column 493 incf timeout_counter3,W ; Init Column
494 call PLED_SetColumnPixel ; pixel x2 494
495 INIT_PIXEL_WROTE timeout_counter3 ; pixel x2
495 496
496 profile_display_loop: 497 profile_display_loop:
497 movff profile_temp+0,profile_temp2+0 498 movff profile_temp+0,profile_temp2+0
498 movff profile_temp+1,profile_temp2+1 ; 16Bit x-scaler 499 movff profile_temp+1,profile_temp2+1 ; 16Bit x-scaler
499 incf profile_temp2+1,F 500 incf profile_temp2+1,F
520 521
521 call profile_display_fill ; In this column between this row (xC+0) and the last row (apnoe_mins) 522 call profile_display_fill ; In this column between this row (xC+0) and the last row (apnoe_mins)
522 movff xC+0,apnoe_mins ; Store last row for fill routine 523 movff xC+0,apnoe_mins ; Store last row for fill routine
523 incf timeout_counter3,F 524 incf timeout_counter3,F
524 525
525 movf xC+0,W 526 PIXEL_WRITE timeout_counter3,xC+0 ; Set col(0..159) x row (0..239), put a std color pixel.
526 call PLED_SetRow ; 0...259
527
528 movf timeout_counter3,W
529 call PLED_SetColumnPixel ; pixel x2
530 call PLED_standard_color
531 call PLED_PxlWrite ; Write two pixels
532 527
533 profile_display_skip_loop1: ; skips readings! 528 profile_display_skip_loop1: ; skips readings!
534 dcfsnz profile_temp2+0,F 529 dcfsnz profile_temp2+0,F
535 bra profile_display_loop3 ; check 16bit.... 530 bra profile_display_loop3 ; check 16bit....
536 531
593 profile_display_fill_down: ; Fill downwards from apone_mins to xC+0! 588 profile_display_fill_down: ; Fill downwards from apone_mins to xC+0!
594 movff apnoe_mins,xC+1 ; Copy 589 movff apnoe_mins,xC+1 ; Copy
595 profile_display_fill_down2: ; Loop 590 profile_display_fill_down2: ; Loop
596 decf xC+1,F 591 decf xC+1,F
597 592
598 movf xC+1,W ; Row 593 HALF_PIXEL_WRITE xC+1 ; Updates just row (0..239)
599 call PLED_SetRow ; 0...259
600
601 call PLED_standard_color
602 call PLED_PxlWrite_Single; Write one Pixel
603 594
604 movf xC+0,W 595 movf xC+0,W
605 cpfseq xC+1 ; Loop until xC+1=xC+0 596 cpfseq xC+1 ; Loop until xC+1=xC+0
606 bra profile_display_fill_down2 597 bra profile_display_fill_down2
607 return ; apnoe_mins and xC+0 are untouched 598 return ; apnoe_mins and xC+0 are untouched
609 profile_display_fill_up: ; Fill upwards from xC+0 to apone_mins! 600 profile_display_fill_up: ; Fill upwards from xC+0 to apone_mins!
610 movff xC+0,xC+1 ; Copy 601 movff xC+0,xC+1 ; Copy
611 profile_display_fill_up2: ; Loop 602 profile_display_fill_up2: ; Loop
612 decf xC+1,F 603 decf xC+1,F
613 604
614 movf xC+1,W ; Row 605 HALF_PIXEL_WRITE xC+1 ; Updates just row (0..239)
615 call PLED_SetRow ; 0...259
616
617 call PLED_standard_color
618 call PLED_PxlWrite_Single; Write one Pixel
619 606
620 movf apnoe_mins,W 607 movf apnoe_mins,W
621 cpfseq xC+1 ; Loop until xC+1=apnoe_mins 608 cpfseq xC+1 ; Loop until xC+1=apnoe_mins
622 bra profile_display_fill_up2 609 bra profile_display_fill_up2
623 return ; apnoe_mins and xC+0 are untouched 610 return ; apnoe_mins and xC+0 are untouched