Skip to content

Why does Beam::draw() for multiple Beams in _gblMode == 1 never writeFrame[0]? #6

Description

@ScruffR
void Beam::draw(){
    //resets beam - will clear all beams
    pinMode(_rst, OUTPUT);
    digitalWrite(_rst, LOW);
    delay(100);
    digitalWrite(_rst, HIGH);
    delay(250);       
    
    initBeam(); 
    for (int i=0; i<36; ++i){ 
    convertFrame(frameList[i]); 
    if (_gblMode == 1){
        if(_beamCount == 1){
            writeFrame(BEAMA,i);
            _lastFrameWrite = i;
        }
        else if (_beamCount == 2){  
            writeFrame(BEAMA,i+1+1);
            writeFrame(BEAMB,i+1);
            _lastFrameWrite = i + 1 + 1;            
        }
        else if (_beamCount == 3){
            writeFrame(BEAMA,i+1+1+1);
            writeFrame(BEAMB,i+1+1);
            writeFrame(BEAMC,i+1);
            _lastFrameWrite = i + 1 + 1 + 1;            
        }
        else if (_beamCount == 4){
            writeFrame(BEAMA,i+1+1+1+1);
            writeFrame(BEAMB,i+1+1+1);
            writeFrame(BEAMC,i+1+1);
            writeFrame(BEAMD,i+1);
            _lastFrameWrite = i + 1 + 1 + 1 + 1;            
        }   
    } else {
        writeFrame(_currBeam,i);
        _lastFrameWrite = i;
    }
    // reset cs[] 
    for (int d=0; d<12; ++d){
      cs[d] = 0x00;
    }    
  }  
  setPrintDefaults(MOVIE, 1, 20, 7, 2, 1, 0)
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions