Add architecture diagram
+32
-2
@@ -1,6 +1,36 @@
|
|||||||
# Architecture
|
# Architecture
|
||||||
|
|
||||||
|
## Introduction
|
||||||
|
|
||||||
|
To get the PDP-10 to solve sudokus and learn how to code in PDP-10 assembly, we
|
||||||
|
should first consider, what functions we need, and how to structure the code, so
|
||||||
|
we can build small, fast and reusable functions. Since organising code in
|
||||||
|
assembly is a lot harder than in high-level programming languages such as LISP
|
||||||
|
and C, we should first plan how the program should look like, before we start
|
||||||
|
writing the actual code. This way, we can encapsulate the code and make it
|
||||||
|
reusable. The program will follow a simple flow:
|
||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart LR
|
---
|
||||||
id
|
title: Program-Flow
|
||||||
|
---
|
||||||
|
flowchart TD
|
||||||
|
start((Start))
|
||||||
|
print1["Print Welcome Message"]
|
||||||
|
cmdline["Read file name from command line"]
|
||||||
|
fileexists{"File Exists?"}
|
||||||
|
loadfile["Load grid from file"]
|
||||||
|
print2["Print board"]
|
||||||
|
solve[["Solve the puzzle"]]
|
||||||
|
print3["Print solved board"]
|
||||||
|
stop((Stop))
|
||||||
|
|
||||||
|
start --> print1
|
||||||
|
print1 --> fileexists
|
||||||
|
fileexists -->|No| stop
|
||||||
|
fileexists -->|Yes| loadfile
|
||||||
|
loadfile --> print2
|
||||||
|
print2 --> solve
|
||||||
|
solve --> print3
|
||||||
|
print3 --> stop
|
||||||
```
|
```
|
||||||
|
|||||||
Reference in New Issue
Block a user