annotate docs/lyx/review.lyx @ 42:792da050d8c4 tip

more dox
author james <jb302@eecs.qmul.ac.uk>
date Tue, 22 Apr 2014 14:25:14 +0100
parents a9bf262f557b
children
rev   line source
jb302@39 1 #LyX 2.0 created this file. For more info see http://www.lyx.org/
jb302@39 2 \lyxformat 413
jb302@39 3 \begin_document
jb302@39 4 \begin_header
jb302@39 5 \textclass article
jb302@39 6 \use_default_options true
jb302@39 7 \maintain_unincluded_children false
jb302@39 8 \language english
jb302@39 9 \language_package default
jb302@39 10 \inputencoding auto
jb302@39 11 \fontencoding global
jb302@39 12 \font_roman default
jb302@39 13 \font_sans default
jb302@39 14 \font_typewriter default
jb302@39 15 \font_default_family default
jb302@39 16 \use_non_tex_fonts false
jb302@39 17 \font_sc false
jb302@39 18 \font_osf false
jb302@39 19 \font_sf_scale 100
jb302@39 20 \font_tt_scale 100
jb302@39 21
jb302@39 22 \graphics default
jb302@39 23 \default_output_format default
jb302@39 24 \output_sync 0
jb302@39 25 \bibtex_command default
jb302@39 26 \index_command default
jb302@39 27 \paperfontsize default
jb302@39 28 \use_hyperref false
jb302@39 29 \papersize default
jb302@39 30 \use_geometry false
jb302@39 31 \use_amsmath 1
jb302@39 32 \use_esint 1
jb302@39 33 \use_mhchem 1
jb302@39 34 \use_mathdots 1
jb302@39 35 \cite_engine basic
jb302@39 36 \use_bibtopic false
jb302@39 37 \use_indices false
jb302@39 38 \paperorientation portrait
jb302@39 39 \suppress_date false
jb302@39 40 \use_refstyle 1
jb302@39 41 \index Index
jb302@39 42 \shortcut idx
jb302@39 43 \color #008000
jb302@39 44 \end_index
jb302@39 45 \secnumdepth 3
jb302@39 46 \tocdepth 3
jb302@39 47 \paragraph_separation indent
jb302@39 48 \paragraph_indentation default
jb302@39 49 \quotes_language english
jb302@39 50 \papercolumns 1
jb302@39 51 \papersides 1
jb302@39 52 \paperpagestyle default
jb302@39 53 \tracking_changes false
jb302@39 54 \output_changes false
jb302@39 55 \html_math_output 0
jb302@39 56 \html_css_as_file 0
jb302@39 57 \html_be_strict false
jb302@39 58 \end_header
jb302@39 59
jb302@39 60 \begin_body
jb302@39 61
jb302@39 62 \begin_layout Part
jb302@39 63 Review and Improvements
jb302@39 64 \end_layout
jb302@39 65
jb302@39 66 \begin_layout Standard
jb302@39 67 The diagram below shows an overview of the goal of this project with the
jb302@39 68 completed components and interfaces highlighted in green.
jb302@39 69 \end_layout
jb302@39 70
jb302@39 71 \begin_layout Standard
jb302@39 72 \begin_inset ERT
jb302@39 73 status open
jb302@39 74
jb302@39 75 \begin_layout Plain Layout
jb302@39 76
jb302@39 77
jb302@39 78 \backslash
jb302@39 79 bigskip
jb302@39 80 \end_layout
jb302@39 81
jb302@39 82 \end_inset
jb302@39 83
jb302@39 84
jb302@39 85 \end_layout
jb302@39 86
jb302@39 87 \begin_layout Standard
jb302@39 88 \begin_inset Graphics
jb302@39 89 filename /home/jmz/qm/ede/docs/img/ede/state_of_ede.svg
jb302@39 90 display false
jb302@39 91
jb302@39 92 \end_inset
jb302@39 93
jb302@39 94
jb302@39 95 \end_layout
jb302@39 96
jb302@39 97 \begin_layout Standard
jb302@39 98 \begin_inset ERT
jb302@39 99 status open
jb302@39 100
jb302@39 101 \begin_layout Plain Layout
jb302@39 102
jb302@39 103
jb302@39 104 \backslash
jb302@39 105 bigskip
jb302@39 106 \end_layout
jb302@39 107
jb302@39 108 \end_inset
jb302@39 109
jb302@39 110
jb302@39 111 \end_layout
jb302@39 112
jb302@39 113 \begin_layout Standard
jb302@39 114 \begin_inset Newpage pagebreak
jb302@39 115 \end_inset
jb302@39 116
jb302@39 117
jb302@39 118 \end_layout
jb302@39 119
jb302@39 120 \begin_layout Section
jb302@39 121 Strategy for the completion of EDE
jb302@39 122 \end_layout
jb302@39 123
jb302@39 124 \begin_layout Enumerate
jb302@42 125 Complete debugger interface code:
jb302@39 126 \end_layout
jb302@39 127
jb302@39 128 \begin_deeper
jb302@39 129 \begin_layout Enumerate
jb302@39 130 Both the PC and 8052 versions have fully implemented control interface functions.
jb302@42 131 However, the Python debug class can currently only interact with a file
jb302@39 132 buffer for I/O.
jb302@42 133 The debugger's send and receive functions need to be modified to deal with
jb302@42 134 a serial buffer.
jb302@40 135 \end_layout
jb302@40 136
jb302@40 137 \begin_layout Enumerate
jb302@40 138 An option to enable this mode needs to be added to the command line interface
jb302@42 139 code.
jb302@40 140 \end_layout
jb302@40 141
jb302@40 142 \end_deeper
jb302@40 143 \begin_layout Enumerate
jb302@42 144 Improve testing:
jb302@40 145 \end_layout
jb302@40 146
jb302@40 147 \begin_deeper
jb302@40 148 \begin_layout Enumerate
jb302@41 149 Complete testing of emulator.
jb302@41 150 Before any more emulator code is added, the instructions that have already
jb302@40 151 been implemented should be tested using something similar to the test method
jb302@42 152 outlined in the Emulator Testing section.
jb302@40 153 \end_layout
jb302@40 154
jb302@41 155 \begin_layout Enumerate
jb302@41 156 Implement automated testing for the assembler to remove the need to inspect
jb302@41 157 files by eye.
jb302@41 158 \end_layout
jb302@41 159
jb302@40 160 \end_deeper
jb302@40 161 \begin_layout Enumerate
jb302@42 162 Develop emulated peripheral and peripheral driver code:
jb302@40 163 \end_layout
jb302@40 164
jb302@40 165 \begin_deeper
jb302@40 166 \begin_layout Enumerate
jb302@40 167 Emulated peripherals such as an interrupt controller, timer and parallel
jb302@40 168 port I/O need to be developed.
jb302@40 169 They should be introduced as new modules to the PC build of the emulator.
jb302@40 170 The emulators main.c file will need to be updated to add them to the main
jb302@40 171 execution loop.
jb302@40 172 \end_layout
jb302@40 173
jb302@40 174 \begin_layout Enumerate
jb302@40 175 Peripheral drivers need to be developed for the Intel MCS-51 build, These
jb302@40 176 drivers could be quite specific to the exact development board and/or 8052
jb302@40 177 implementation that is being used.
jb302@40 178 The current Intel MCS-51 build of the emulator uses 4135 bytes of code
jb302@40 179 memory and 56 bytes of RAM.
jb302@40 180 8k ROM and 256 bytes of RAM this leaves almost half the available ROM and
jb302@40 181 200 bytes of RAM for peripheral drivers to be integrated.
jb302@40 182 \end_layout
jb302@40 183
jb302@40 184 \end_deeper
jb302@40 185 \begin_layout Enumerate
jb302@42 186 Add the ability to handle segments and macros to the assembler:
jb302@40 187 \end_layout
jb302@40 188
jb302@40 189 \begin_deeper
jb302@40 190 \begin_layout Enumerate
jb302@42 191 The ELB816 specification document details how these should work; there is
jb302@40 192 no reason the assembler could not be modified to deal with them.
jb302@39 193 \end_layout
jb302@39 194
jb302@39 195 \end_deeper
jb302@39 196 \end_body
jb302@39 197 \end_document