The main application's code is:

[pascal]
function winMain(hInstance: HINST; hPrevInstance: HINST; lpCmdLine: PChar; nCmdShow: Integer); stdcall;
var
Msg: TMsg;
DemoStart: DWord;
LastTime: Cardinal;
begin
KInitializeLog(KLogFilename);

KLog('Init OpenGL..');

.. OpenGL Initialize code ..
.. Main OpenGL loop ..

.. Free OpenGL code ..

KFinalizeLog;
Result := Msg.wParam;
end;

procedure InitializeKngine;
begin
KLog('Initializing engine');

KLog('Create classes..');
Cameras := TknCameras.Create;
Textures := TknTextures.Create;
Fonts := TknFonts.Create;
Console := TknConsole.Create;

KLog('Add camera');
Cameras.Add('Player', Vertex3f(0,0,0), Vertex3f(0,90,0));

KLog('Load all available fonts');
Fonts.LoadAllFonts;

KLog('Load console scheme..');
Console.LoadFromFile('default.knc'); // <- EXCEPTION CREATED HERE

KLog('Finished engine intialization');
end;
[/pascal]

The complete Debug/log unit:
[pascal]
procedure KInitializeLog(const Filename: String);
procedure KFInalizeLog;

procedure KLog(const Value: String);
procedure KLogError(const Value: String);
procedure KLogLine;
procedure KLogDetails;

implementation

var
Log: TStringList;
LogFilename: String;
kDebug_Iint: Boolean;

procedure KInitializeLog(const Filename: String);
begin
If Filename = '' Then Exit;
Log := TStringList.Create;
If FileExists(Filename) Then DeleteFile(Filename);
LogFilename := Filename;
kDebug_Init := True;
KLogDetails;
end;

procedure SaveLog;
begin
If Not kDebug_Init Then Exit;
Log.SaveToFile(LogFilename);
end;

procedure KLog(const Value: String);
begin
If Not kDebug_Init Then Exit;
Log.Add(Value);
SaveLog;
end;

procedure KLogError(const Value: String);
begin
If Not kDebug_Init Then Exit;
KLog('Error :: '+Value);
end;

procedure KLogLine;
begin
If Not kDebug_Init Then Exit;
KLog('******************************************** *****');
end;

procedure KLogDetails;
begin
If Not kDebug_Init Then Exit;
KLogLine;
KLog('Kngine Debugger');
KLog('Version ***');
KLogLine;
end;

initialization
kDebug_Init := False;

finalization

[/pascal]

Console loading routine:
[pascal]
KLog('Loading console scheme');
Fs := TknStream.Create(Filename, fmOpenRead);
Try
Fs.Read(Animation, SizeOf(TConsoleAnimation));
Fs.Read(Direction, SizeOf(TConsoleDirection));
Fs.ReadInteger(MaxLines);
For i := 0 To MaxLines-1 Do Fs.ReadVertex4f(LinePositions[i]);
Fs.ReadVertex4f(cmdPosition);
Fs.ReadSingle(OpenPos);
Fs.ReadSingle(ClosePos);
Fs.ReadSingle(XPos);
Fs.ReadSingle(YPos);

Fs.ReadString(Fontname); // < EXCEPTION RAISED HERE

Fs.ReadVertex3f(FontColour);
Fs.ReadString(Texturename);
Except
raise Exception.Create('Failed to load console!');
End;
Fs.Free;
end;
[/pascal]

At the moment im re-writting my console editor, it seems to be a problem with that.. The editor was using the debugger while i saved the console file, i turned it off and the exception message changed.. But i cant see why this will be the problem :?