Giter Site home page Giter Site logo

rbaker26 / sap1emu Goto Github PK

View Code? Open in Web Editor NEW
14.0 3.0 1.0 20.99 MB

An Emulator for the SAP-1 Computer

Home Page: https://sap1emu.net

License: GNU General Public License v3.0

C# 69.38% Makefile 0.28% HTML 23.17% CSS 0.53% JavaScript 6.63%
sap1 emulator simple computer sap malvino brown assembly binary electronics

sap1emu's Introduction

Hi there, ๐Ÿ‘‹

I am a Software Engineer who loves to learn new things and push myself to create meaningful projects.

My current project is the SAP1Emu Project, an 8-bit computer emulator built for Saddleback College's Computer Science Department. Its goal is to help with online learning due to the COVID-19 crisis. It is built on a C# / .NET Core 3.1 / ASP.NET Core / Azure stack. Check out its Wiki Page for more information.

Languages & Skills

html html html html html html html html html html html html

sap1emu's People

Contributors

brycecallender avatar dragon0 avatar lubeskih avatar rbaker26 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

dragon0

sap1emu's Issues

asdf

Where was the bug located

  • Assembler CLI
  • Emulator CLI
  • Emulator / Assembler GUI
  • API / Library

Bug Description

Steps to Reproduce (for bugs)

Expected Behavior

Current Behavior

Possible Solution (optional)

Screenshots (If applicable)

Context

Your Environment

  • Version used:
  • Operating System and version (desktop or mobile):
  • Link to your project (if API bug)

[EPIC] - Ticket Portal GitHub API in WebApp

Description:
As a user, I want to be able to submit a bug report or feature request without using GitHub, so that I can easily give feedback without having access to developer tools.

To-Do List

  • Build a Portal in the WebApp to allow users to submit bug reports
  • Build a Portal in the WebApp to allow users to submit feature requests
  • Integrate this portal with the GitHub API

Definition of Done
When a user can submit a bug report or a feature request to GitHub without logging into GitHub from the WebApp.

Screenshots (optional)

API Token Authentication & Endpoint Protection

Description:
If wee want to open up the API for others to use, wee need a way to issue and track API token to prevent spamming of the APi.
The GUI should also auth to the API for its requests

To-Do List

  1. Research best way to implement a secure API
  2. Identify needed Azure Resources
    • MSSQL, CosmosDB, AD DS, API Gateway, etc..
  3. Auth the GUI or establish level of trust
  4. Build a portal to request an API Token for integrators

Possible Resources:
https://docs.microsoft.com/en-us/dotnet/architecture/microservices/secure-net-microservices-web-applications/
https://josef.codes/asp-net-core-protect-your-api-with-api-keys/

https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-protect-backend-with-aad

Update Contributing Documents

Description:
Update Repo Docs to assist new developers who want to help with the project.

To-Do List

  • Update Contributing.md on Rules and Guidelines for Contribution
  • Create a Getting Started Guide
    • Getting Started in Windows
    • Getting Started in Linux
    • Getting Started in macOS.
  • Update other Repo Level Project Docs

Definition of Done
A new Dev should be able to read the docs, build the project locally, make an update, and create a Pull Request.

Screenshots (optional)

Progress Bar above SAP1 Display

Add this Ticket to the "Request Tracker" Project
In the right column under Projects

  1. Click the Setting Icon
  2. Click "Request Tracker"

What part of the project is your feature request for?

  • Assembler CLI
  • Emulator CLI
  • Emulator GUI
  • API / Library

Is your feature request related to a problem? Please describe.

I do not know how much longer is left in my program while it is running.

Describe the solution you'd like

A progress bar above the SAP1 display so I can estimate how long may program will run for.

Describe alternatives you've considered

Additional context

Set Up Dependabot Auto PRs

Description:
Dependabot can auto create PRs to update NuGet Packages.

To-Do List
Set up Dependabot Config File

Definition of Done

  1. Downgrade a NuGet package,
  2. Push to master
  3. See if Dependabot opens a PR

Screenshots (optional)

Back/Next Buttons need double click

Add this Ticket to the "Issue Tracker" Project

In the right column under Projects

  1. Click the Setting Icon
  2. Click "Issue Tracker" Button

Where was the bug located

  • Assembler CLI
  • Emulator CLI
  • Emulator / Assembler GUI
  • API / Library

Bug Description

The back and forward buttons sometimes need a double click to advance the frame.
This will require a refactor.

-F6 Flag

Requested by George Eaton

What part of the projec is your feature request for?

  • Assembler CLI
  • Emulator CLI
  • Emulator GUI
  • API / Library

Is your feature request related to a problem? Please describe.
The -F flag generates too much information that is can be confusing.

Describe the solution you'd like
An -F6 Flag would only output the 6th Frame of each instruction providing a good mix between -f and -F.

If this could integrate with -d flag, that would be better.
For example " " could step by command and "enter" could step by TState.
Or something like that.

Describe alternatives you've considered
n/a

Additional context
Here is a screenshot of a possible output from a -F6 flag
image

Open CodeBox in Emulator

Description:
This feature will allow code in the Docs Library to be opened up and run in the Emulator Page by pressing a button.

To-Do List

  • Create API Post Method that accepts a body of code
  • Create Dynamic View Return that prepopulates the code from the CodeMirror box into the Emulator.

Definition of Done

  1. Passes all old Integration Testing
  2. Needs some Selenium Based Testing

Screenshots (optional)
Below each Code Box would be this button
image

This button would launch the Emulator with the code in the box.
image

No HLT Error

What part of the project is your feature request for?

  • Assembler CLI
  • Emulator CLI
  • Emulator GUI
  • API / Library

Is your feature request related to a problem? Please describe.

See #19
If there is not HLT in the program, the parser should throw an error.

The error message should be more descriptive than the current message.

If there is no HLT, it tries to run the data section

Todo

Write Unit test for code file
LDA170_NoHLT.s

image

It needs to return with an error.

SAP1Emu-no-gui.sln Outdated

Add this Ticket to the "Issue Tracker" Project

In the right column under Projects

  1. Click the Setting Icon
  2. Click "Issue Tracker" Button

Where was the bug located

  • Assembler CLI
  • Emulator CLI
  • Emulator / Assembler GUI
  • API / Library

Bug Description

The command "dotnet build SAP1EMU-no-gui.sln" exited with 1.
1.62s$ dotnet test SAP1EMU-no-gui.sln
/usr/share/dotnet/sdk/3.1.302/NuGet.targets(282,5): error MSB3202: The project file "/home/travis/build/rbaker26/SAP1EMU/SAP1EMU.Assembler-CLI/SAP1EMU.Assembler-CLI.csproj" was not found. [/home/travis/build/rbaker26/SAP1EMU/SAP1EMU-no-gui.sln]
/usr/share/dotnet/sdk/3.1.302/NuGet.targets(282,5): error MSB3202: The project file "/home/travis/build/rbaker26/SAP1EMU/SAP1EMU.Sandbox/SAP1EMU.Sandbox.csproj" was not found. [/home/travis/build/rbaker26/SAP1EMU/SAP1EMU-no-gui.sln]
The command "dotnet test SAP1EMU-no-gui.sln" exited with 1.

Steps to Reproduce (for bugs)

  1. Build the "no-gui" sln file

Flags & Jump Register

What part of the projec is your feature request for?

  • Assembler CLI
  • Emulator CLI
  • Emulator GUI
  • API / Library

Is your feature request related to a problem? Please describe.
Implement the Flag and Jump Register to further decouple the registers and components.

Describe the solution you'd like
The flags register would contain all of the Flag bools for the system.
The Jump Register would tell the PC when to jump.

Describe alternatives you've considered

n/a

Additional context
n/a

ViewData Title Broken

Description:
The ViewData["Title"] is not properly set for some of the docs pages.

To-Do List
Insure ViewData is set properly for all views in Docs and Home

Definition of Done
All Docs should have their connect ViewBag Set

Screenshots (optional)
Current view of Title:
image

Move Engine CI Testing from Lib.Test to Engine.Test

Description:
Currently Lib.Test has Unit Tests for the LIb and CI Test for the Engine.
The CI Engine Tests should be moved to a new project called Engine.Test

To-Do List

  1. Create SAP1EMU.Engine.Test
  2. Move Engine CI testing to this new project

Definition of Done
When the above testing is in the correct project.

Screenshots (optional)

[EPIC] - Add Notify Me of Update Button

Description:
As a user, I want to be able to subscribe to updates about the site, so that I know when new features are released.

To-Do List

  • Add a floating Button to the bottom right corner of the screen
  • Create a form to allow users to subscribe to updates
  • Create a email template to contain the updates
    • GDPR Compliance / Unsubscribe Feature
  • Entity Framework Core Models / Contexts Updates
  • Azure MS SQL Server Updates
  • Azure SMTP Email Server
  • OWASP Data Security Checks
  • Admin Portal for Sending Update Emails from WebApp

Definition of Done
A user can subscribe and receive emails regarding updates.

Screenshots (optional)

Rename SAP1EMU.Engine-CLI to SAP1EMU.CLI

Description:
Rename SAP1EMU.Engine-CLI to SAP1EMU.CLI
This will be to make sure the Project Names are the most reflective of their purpose.

To-Do List

  1. Rename SAP1EMU.Engine-CLI to SAP1EMU.CLI
  2. Refactor code to reflect the Project Name Change
  3. Update Documentation including README.md

Definition of Done
When SAP1EMU.Engine-CLI and its file resources are renamed to SAP1EMU.CLI

Screenshots (optional)

Make sure Jumps Work with new instructions sets

Where was the bug located

  • Assembler CLI
  • Emulator CLI
  • Emulator / Assembler GUI
  • API / Library

Bug Description

Jumps may be broken and Frame Decoding of instructions needs to be shifted to something like this

InstructionSet.instructions.Find(x => x.BinCode.Equals(ireg.ToString())).OpCode;

CSS Cleanup - GUI - Assembler Page

Description:
The Assembler Page in the GUI is feature-complete and is ready for stylizing.

To-Do List

  1. Make Margins and Padding consistent though the page
  2. Create an alignment scheme for the buttons and labels in the two forms
  3. Make button width look uniform or natural
  4. Change the Save button value to Save to File to match the Load from File button

Definition of Done

  1. Must satisfy the above requirements
  2. Must not create technical-debt in the CSS codebase
  3. Adhere to good style
  4. Submit a PR and Tag this Issue (#51)

Screenshots (optional)

Below are two pictures of the Assembler Page (one with and without code)

image

image

Underflow Flag sets Overflow Flag

Where was the bug located

  • Assembler CLI
  • Emulator CLI
  • Emulator / Assembler GUI
  • API / Library

Bug Description

When an operation that should trigger the underflow operation occurs, the overflow flag is also set.

x

Where was the bug located

  • Assembler CLI
  • Emulator CLI
  • Emulator / Assembler GUI
  • API / Library

Bug Description

Steps to Reproduce (for bugs)

Expected Behavior

Current Behavior

Possible Solution (optional)

Screenshots (If applicable)

Context

Your Environment

  • Version used:
  • Operating System and version (desktop or mobile):
  • Link to your project (if API bug)

Ignoring Comments and Whitespace in GUI Editor Line Numbers

What part of the project is your feature request for?

  • Assembler CLI
  • Emulator CLI
  • Emulator GUI
  • API / Library

Is your feature request related to a problem? Please describe.

When a comment or newline is above a syntax error, it will throw-off the the number of the error message.
image

Todo List

  • Line number should start at 0
  • A blank line should not increment the line number
  • A line containing only comments should not increment the line number

This will have to deal with the JavaScript passed to the CodeMirror Lib.

Implement Proper SamVer2.0

Where was the bug located

  • Assembler CLI
  • Emulator CLI
  • Emulator / Assembler GUI
  • API / Library

Bug Description

The releases do not comply with proper SamVer2.0 standards.

Possible Solution (optional)

Retag all Releases to comply

Screenshots (If applicable)

image

Instruction not Resolved

Add this Ticket to the "Issue Tracker" Project

In the right column under Projects

  1. Click the Setting Icon
  2. Click "Issue Tracker" Button

Where was the bug located

  • Assembler CLI
  • Emulator CLI
  • Emulator / Assembler GUI
  • API / Library

Bug Description

The Instruction should be resolved by this point.
The issue is work in progress.

image

Steps to Reproduce (for bugs)

Expected Behavior

Current Behavior

Possible Solution (optional)

Screenshots (If applicable)

Context

Your Environment

  • Version used:
  • Operating System and version (desktop or mobile):
  • Link to your project (if API bug)

Aria Support

What part of the project is your feature request for?

  • Assembler CLI
  • Emulator CLI
  • Emulator GUI
  • API / Library

Is your feature request related to a problem? Please describe.

This project needs Aria support to increase accessibility. This will be a requirement if it is to be used by schools due to ADA.

Describe the solution you'd like

All controls and displays need to be audited for proper Aria Attributes

This will need to be broken into multiple tickets based off of component/page scope.

See Aria Docs

Assembler - Buttons Not Aligned

Description:
The buttons on the Assembler Page are not aligned as they are on the Emulator Page

To-Do List

  • Copy Bootstrap Alignment from Emulator Page to Assembler Page.

Definition of Done

Screenshots (optional)
image
image

Engine Optimizations

Add this Ticket to the "Issue Tracker" Project

In the right column under Projects

  1. Click the Setting Icon
  2. Click "Issue Tracker" Button

Where was the bug located

  • Assembler CLI
  • Emulator CLI
  • Emulator / Assembler GUI
  • API / Library

Bug Description

The Engine is really slowed down because it needs to read from a file to decode the Instructions for the Frame.
It needs to be rewritten to be less resource-heavy.

Screenshots (If applicable)

image
image

Display RAM Content in Frame.ToString()

Submitted on behalf of George Eaton

What part of the project is your feature request for?

  • Assembler CLI
  • Emulator CLI
  • Emulator GUI
  • API / Library

Is your feature request related to a problem? Please describe.
No.

Describe the solution you'd like
The Frame ToString() should display the contents of RAM addressed by the MAR.

Describe alternatives you've considered
N/A

Additional context
image
Should display the RAM at 0000 in the Frame.ToString() function.

Release Files - Nested Directories in Zip

Where was the bug located

  • Assembler CLI
  • Emulator CLI
  • Emulator / Assembler GUI
  • API / Library
  • Release Binaries

Bug Description

The release binaries contain all of the parent directories instead of just the relevant directory.

Steps to Reproduce (for bugs)

Download

  1. Download Release 1.0.4 - linux-x64.tar
  2. Unzip linux-x64.tar

Roll your own

git clone https://github.com/rbaker26/SAP1EMU.git
cd SAP1EMU/SAP1EMU.Engine-CLI/
make

The compressed outputs should be at:
SAP1EMU/SAP1EMU.Engine-CLI/bin/Release/netcoreapp3.1/publish/output

Note how the unzipped directory contains a bunch of parent directories instead of just the files at the target directory.

cd SAP1EMU/SAP1EMU.Engine-CLI/bin/Release/netcoreapp3.1/publish/output
tar -xf linux-x64.tar
cd SAP1EMU.Engine-CLI
ls -l

total 0
drwxrwxrwx 1 rbaker rbaker 4096 Apr 28 11:59 bin

cd bin
ls -l

total 0
drwxrwxrwx 1 rbaker rbaker 4096 Apr 28 11:59 Release

# etc etc

Expected Behavior

When unzipped, the resulting folder should only contain the contents of linux-x64.
For example:

tar -xf linux-x64.tar
cd linux-x64
ls -l

total 364
-rwxrwxrwx 1 rbaker rbaker 204800 Jan  1 19:01 CommandLine.dll
-rwxrwxrwx 1 rbaker rbaker   7168 Apr 22 10:19 SAP1EMU.Assembler.dll
-rwxrwxrwx 1 rbaker rbaker   1676 Apr 22 10:19 SAP1EMU.Assembler.pdb
-rwxrwxrwx 1 rbaker rbaker   6656 Apr 22 10:19 SAP1EMU.Engine.dll
-rwxrwxrwx 1 rbaker rbaker   1612 Apr 22 10:19 SAP1EMU.Engine.pdb
-rwxrwxrwx 1 rbaker rbaker  19456 Apr 22 10:19 SAP1EMU.Lib.dll
-rwxrwxrwx 1 rbaker rbaker   7932 Apr 22 10:19 SAP1EMU.Lib.pdb
-rwxrwxrwx 1 rbaker rbaker  86424 Apr 22 10:19 SAP1Emu
-rwxrwxrwx 1 rbaker rbaker   1950 Apr 22 10:19 SAP1Emu.deps.json
-rwxrwxrwx 1 rbaker rbaker  14336 Apr 22 10:19 SAP1Emu.dll
-rwxrwxrwx 1 rbaker rbaker   2952 Apr 22 10:19 SAP1Emu.pdb
-rwxrwxrwx 1 rbaker rbaker    146 Apr 22 10:19 SAP1Emu.runtimeconfig.json

Current Behavior

Currently, the unzipped folder contains:
linux-x64/SAP1EMU.Engine-CLI/bin/Release/netcoreapp3.1/publish/linux-x64/the_target_files
instead of
linux-x64/the_target_files

Possible Solution

The Makefile needs to be adjusted to ensure the extra directories do not get included.

Screenshots (If applicable)

This is a screenshot of the win10-x64, but it has the same nested directory behavior.

Note the URI box at the top of the window.
image

Context

Creates unnecessary work for the user.

Your Environment

  • Version used: 1.0.4
  • Operating System and version (desktop or mobile): Window 10 - 10.0.19041 Build 19041
  • Operating System and version (desktop or mobile): Ubuntu 18.04.4 LTS - WSL2 - HyperV UltraThin

No HLT, Program Counter should overflow and loop

What part of the projec is your feature request for?

  • Assembler CLI
  • Emulator CLI
  • Emulator GUI
  • API / Library

Is your feature request related to a problem? Please describe.
If there is no HLT in the program, the program should endlessly loop over and over again.

Describe the solution you'd like
"

Describe alternatives you've considered
n/a

Additional context
n/a

Save Emulator Output to File

Description:
Does it make sense to save the Emulator Output as a file so a user can load it back in to run it?
I am leaning towards no.

The same input to a file may make some sense. The output of the GUI is currently a huge JSON array and would have to be parsed and formatted before being user-readable.

Talk with George to find out if this is really needed.

To-Do List

Definition of Done

Screenshots (optional)

RAM Does not Update

Add this Ticket to the "Issue Tracker" Project

In the right column under Projects

  1. Click the Setting Icon
  2. Click "Issue Tracker" Button

Where was the bug located

  • Assembler CLI
  • Emulator CLI
  • Emulator / Assembler GUI
  • API / Library

Bug Description

The RAM does not update on the WebApp

Docs for API Integration for Student in College

Description:
The Docs/API section of this project needs to link to the Swagger/OpenAPI Docs and needs to run through how to connect to this API using common languages.

To-Do List

  • Swagger / OpenAPI Auto Docs
  • Swagger / OpenAPI JSON File
  • Tutorials on how to use API
  • Connecting with C# / .NET Core API Docs
  • Connecting with Java API Docs
  • Connecting with Python API Docs
  • Connecting with Rust API Docs

Definition of Done

  1. Passes all Integration Tests
  2. Code can be handed off to a student and they are able to use the docs to create their API Client in their given language.

Screenshots (optional)
An example of Swagger Auto Docs
image

Implement LDI

What part of the projec is your feature request for?

  • Assembler CLI
  • Emulator CLI
  • Emulator GUI
  • API / Library

Is your feature request related to a problem? Please describe.

Add LDI support. Exists in Ben Eater, but not implemented.

Describe the solution you'd like

Write microcode for LDI

Describe alternatives you've considered

n/a

Additional context

Refactor Integration Tests

Description:
Currently, the testing is fractured across the Solution. Test should belong in the *.Test csproj that relates to what they are testing.
For example, AssemblerTest.cs needs to be migrated over to Assembler.Test instead of Lib.Test.

To-Do List

  • Relocate Tests

Definition of Done

Screenshots (optional)

Signed Unsigned Data in the Output Register

Description:
If you run the LDA170.s program from SAP1EMU.CLI.Test.sln, you should see 170 and -86
Currently you only see 170 170

To-Do List

  • Fix issue with converting to negative number

Rename SAP1EMU.WebApp to SAP1EMU.GUI

Description:
Rename SAP1EMU.WebApp to SAP1EMU.GUI
This will be to make sure the Project Names are the most reflective of their purpose.

To-Do List

  1. Rename SAP1EMU.WebApp to SAP1EMU.GUI
  2. Refactor code to reflect the Project Name Change
  3. Update Documentation including README.md

Definition of Done
When SAP1EMU.WebApp and its file resources are renamed to SAP1EMU.GUI

Screenshots (optional)

Save User Input to Database

Description:
It would be cool to save the user input into the emulator so we can analyze how people are using the site.

To-Do List

  • Id best type of DB to user (MSSQL, MongoDB, CosmosDB, etc)
  • EF Core or Store Procs?
  • Set up roles / auth for API and set trust levels
  • Azure holds the encrypted connection strings

Comment Support

What part of the projec is your feature request for?

  • Assembler CLI
  • Emulator CLI
  • Emulator GUI
  • API / Library

Is your feature request related to a problem? Please describe.
Assembly inputs, file and typing, should support comments.

Describe the solution you'd like
Input files should be able to contain comments like the following:

LDA 0xF # This is a comment
# Whole line comment
/* Also 
a 
Comment */
HLT /* I could also do this */

Describe alternatives you've considered
n/a

Additional context
Here is an example of the feature request.
image

Change Emulator Output to Emulator Errors

Description:
It is not obvious that the Emulator Output is for error messages, not the result of the run.

To-Do List
Change name

Definition of Done

Screenshots (optional)

Election.NET Tooling Broken

Add this Ticket to the "Issue Tracker" Project

In the right column under Projects

  1. Click the Setting Icon
  2. Click "Issue Tracker" Button

Where was the bug located

  • Assembler CLI
  • Emulator CLI
  • Emulator / Assembler GUI
  • API / Library

Bug Description

The build tools on the gui-work branch are broken after the nugget update.
Needs to be investigated.
build tools in master are still working

CLI Version Number

Where was the bug located

  • Assembler CLI
  • Emulator CLI
  • Emulator / Assembler GUI
  • API / Library

Bug Description

The version numbers in the CLI do not match those of the release.

Steps to Reproduce (for bugs)

SAP1Emu.exe

Expected Behavior

see screenshot

Current Behavior

see screenshot

Possible Solution (optional)

Screenshots (If applicable)

image

Runtime Log Stream Fails

Add this Ticket to the "Issue Tracker" Project

In the right column under Projects

  1. Click the Setting Icon
  2. Click "Issue Tracker" Button

Where was the bug located

  • Assembler CLI
  • Emulator CLI
  • Emulator / Assembler GUI
  • API / Library

Bug Description

The RuntimeLog.txt file is getting locked and causing the webapp to not work.

Steps to Reproduce (for bugs)

  1. If there is an error in the ASM, like only 15 lines are input, it will cause this error4.

Expected Behavior

Programs runs without error

Current Behavior

RuntimeLog.txt get locked and the program doesn't run in the engine

Possible Solution (optional)

RuntimeLog.txt should probably not be included in the webapp

Screenshots (If applicable)

image

Duplicate Event Listeners in WebApp

Where was the bug located

  • Assembler CLI
  • Emulator CLI
  • Emulator / Assembler GUI
  • API / Library

Bug Description

There are multiple Ipc Event Listerens on the open external links actions causing multiple windows to be opened.

Steps to Reproduce (for bugs)

  1. Click Wiki in the nav-bar

Expected Behavior

One wiki tab should open

Current Behavior

an extra tab is opened for every page navigation

Possible Solution (optional)

remove extra EL's

Screenshots (If applicable)

\

Support for Ben Eater's OpCodes

Requested by George Eaton

What part of the projec is your feature request for?

  • Assembler CLI
  • Emulator CLI
  • Emulator GUI
  • API / Library

Is your feature request related to a problem? Please describe.
To help students use the opcodes they learned in the Ben Eater videos, it would be nice to have a flag that supported Ben's codes, which are slightly different than Malvino's.

Describe the solution you'd like
-BE flag for Ben Eater's Opcodes

Describe alternatives you've considered
n/a

Additional context
There could be some issues with the Unit Test, Program Counter's Jump Register, and the Assembler.

A clever solution is necessary.

ALU Values Displays Incorrect in Debug Frame

Where was the bug located

  • Assembler CLI
  • Emulator CLI
  • Emulator GUI
  • API / Library

Describe the bug
Reported by George Eaton,
In the Emulator CLI, the ALU didn't contain the sum of the A and B registers.

To Reproduce
Run program and when updating A and B Registers in debug mode with and single step the program.

Expected behavior
Whenever the A or B Register update, regardless of the microcode, the ALU should also update.

Screenshots
None available.

Desktop (please complete the following information):

  • OS: [e.g. iOS] Window 10
  • Version [e.g. 22] 10

Additional context
My guess to the problem is the ALU needs to be registered in the Observerpattern after A and B this way it will run its update after both A and B update.

dd

Where was the bug located

  • Assembler CLI
  • Emulator CLI
  • Emulator / Assembler GUI
  • API / Library

Bug Description

Steps to Reproduce (for bugs)

Expected Behavior

Current Behavior

Possible Solution (optional)

Screenshots (If applicable)

Context

Your Environment

  • Version used:
  • Operating System and version (desktop or mobile):
  • Link to your project (if API bug)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.