<commit_before>//============================================================
//    some initialization and interrupt redirect setup
//============================================================
main:
    sei         // set interrupt disable flag

    jsr init_screen     // clear the screen
    jsr init_text       // write lines of text
    jsr init_bitmap
    
    jsr music.init     // init music routine now

    ldy #$7f    // $7f = %01111111
    sty $dc0d   // Turn off CIAs Timer interrupts ($7f = %01111111)
    sty $dd0d   // Turn off CIAs Timer interrupts ($7f = %01111111)
    lda $dc0d   // by reading $dc0d and $dd0d we cancel all CIA-IRQs in queue/unprocessed
    lda $dd0d   // by reading $dc0d and $dd0d we cancel all CIA-IRQs in queue/unprocessed

    lda #$01    // Set Interrupt Request Mask...
    sta $d01a   // ...we want IRQ by Rasterbeam (%00000001)

    lda $d011   // Bit#0 of $d011 indicates if we have passed line 255 on the screen
    and #$7f    // it is basically the 9th Bit for $d012
    sta $d011   // we need to make sure it is set to zero for our intro.

    lda #<main_loop   // point IRQ Vector to our custom irq routine
    ldx #>main_loop 
    sta $314    // store in $314/$315
    stx $315   

    lda #$00    // trigger first interrupt at row zero
    sta $d012

    cli                  // clear interrupt disable flag
    jmp *                // infinite loop

//============================================================<commit_msg>Init music routine before bitmap<commit_after>//============================================================
//    some initialization and interrupt redirect setup
//============================================================
main:
    sei         // set interrupt disable flag

    jsr music.init      // init music routine now
    jsr init_screen     // clear the screen
    jsr init_text       // write lines of text
    jsr init_bitmap

    ldy #$7f    // $7f = %01111111
    sty $dc0d   // Turn off CIAs Timer interrupts ($7f = %01111111)
    sty $dd0d   // Turn off CIAs Timer interrupts ($7f = %01111111)
    lda $dc0d   // by reading $dc0d and $dd0d we cancel all CIA-IRQs in queue/unprocessed
    lda $dd0d   // by reading $dc0d and $dd0d we cancel all CIA-IRQs in queue/unprocessed

    lda #$01    // Set Interrupt Request Mask...
    sta $d01a   // ...we want IRQ by Rasterbeam (%00000001)

    lda $d011   // Bit#0 of $d011 indicates if we have passed line 255 on the screen
    and #$7f    // it is basically the 9th Bit for $d012
    sta $d011   // we need to make sure it is set to zero for our intro.

    lda #<main_loop   // point IRQ Vector to our custom irq routine
    ldx #>main_loop 
    sta $314    // store in $314/$315
    stx $315   

    lda #$00    // trigger first interrupt at row zero
    sta $d012

    cli                  // clear interrupt disable flag
    jmp *                // infinite loop

//============================================================
{'fraction_non_alphanumeric': 0.19549882431978502, 'fraction_numerical': 0.055760833053409474, 'mean_word_length': 2.29060773480663, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 8, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4387345', 'n_tokens_mistral': 973, 'n_tokens_neox': 834, 'n_words': 346}