Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bunch o'changes #440

Merged
merged 12 commits into from
Mar 21, 2021
Merged

Bunch o'changes #440

merged 12 commits into from
Mar 21, 2021

Conversation

paladine
Copy link
Collaborator

Added STC/LOOPNE
Added tests for STC/CLC/LOOP/LOOPE/LOOPNE
Fix bug in REP/REPE/REPNE - updated tests accordingly
Changed HLT to set Registers.Halt - modified RealModeMemoryCore to initialize everything with halts, so if something screws up, the system is halted
Added support for file handles in Int21h - can open pre-existing files now
Configured environment variable segment in EXEs
Fixed starting stack segment/pointer in EXEs
Shifted top memory address of EXEs to A000:0000 (video memory). It turns out extra space is needed for data segments and libc refused to initialize without adequate space after the end of the EXE memory
New int21 - 0x3D, 0x3E, 0x43,

Copy link
Collaborator

@tuday2 tuday2 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Passed 37 module test and let run for 1 hour (12 RTick's running) looks good!

ushort bytesWritten = 0;
foreach (var v in _environmentVariables)
{
Memory.SetArray(ENVIRONMENT_SEGMENT, bytesWritten, Encoding.ASCII.GetBytes(v));
bytesWritten += (ushort)(v.Length + 1);
string str = v.Key + "=" + v.Value + "\0";
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

var

@enusbaum enusbaum merged commit 29df21d into master Mar 21, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants