function init(tpgn) - tpgn referă obiectul produs de parserul de PGN; iniţializează tabla de şah şi apelează init_moves(tpgn.moves); aceasta transformă pe rând mutările din notaţia SAN în coordonate From-To, actualizând corespunzător poziţia în memorie şi înscrie mutările în notaţie clară în "fişa partidei" (v. doPGN)

function init_moves(movs) {
    for(var i=0, n = movs.length; i < n; i++) {
        //        alert(movs[i].san+"\n"+NAG[movs[i].NAG]+"\n"+movs[i].comment+"\n"+movs[i].variant);
        var u = san_to_coord(movs[i].san);
        if(u) {
            makemove(u);
            addToHistory(moveToNotation(u));
        }
        else {
            alert("Residual error: wrong move in PGN (misapprehension).");
            break;
        }
    }
}
function loadPGN() {
    newGame();
    tpgn = new pgnParser('idpgn');
    init(tpgn);
    if(tpgn.in_comm) document.getElementById("stats").innerHTML = tpgn.in_comm;
    if(tpgn.errors) document.getElementById("stats").innerHTML = "<b>Error</b> in PGN text:<br>" + tpgn.errors;
}

function playGame() {
    if(!LAST_POS_MOVE) LAST_POS_MOVE = 0;
    repeat = window.setInterval(nextMove, playAt * 1000);
}