

@185

10 years 
mulligan 
Found a way to inline SDCC ASM directly into C to test hard to reach …



@184

10 years 
mulligan 
Found out how to directly access 8051's registers from C code. Added …



@183

10 years 
mulligan 
A few more opcodes covered. Emulator seems to work fine on LFSR
program.



@182

10 years 
mulligan 
Linear feedback shift register (random number generator) example added.



@181

10 years 
campbell 
Sort out some axioms.



@180

10 years 
mulligan 
Arctan floating point approximation code. 8051 really struggles with …



@179

10 years 
mulligan 
Program executes as required.



@178

10 years 
campbell 
Bring README file up to date.



@177

10 years 
campbell 
Missing cost labels file.



@176

10 years 
campbell 
Remove old executable semantics without I/O.



@175

10 years 
campbell 
Add cost labels, with the semantics that the label is added to the …



@174

10 years 
campbell 
Add a form of nonterminating functional semantics.



@173

10 years 
campbell 
Minor changes for newer versions of matita.



@172

10 years 
mulligan 
JZ was not buggy after all (miscount of loop cycles). Branchless …



@171

10 years 
mulligan 
Parity check program. Bug found with jump zero instruction. A few …



@170

10 years 
mulligan 
Emulator successfully emulates rounding program.



@169

10 years 
mulligan 
Latest test C file: fast roundup to closest power of two.



@168

10 years 
mulligan 
Implemented latch access.



@167

10 years 
mulligan 
Fast inverse square root C code, emulator mostly does fine running it …



@166

10 years 
mulligan 
I/O support added for serial buffer.



@165

10 years 
mulligan 
Some example C programs that the emulator can run.



@164

10 years 
mulligan 
Successfully compiled a C program with a struct passed by pointer to a …



@163

10 years 
mulligan 
Fixed bug with JNB not jumping correctly.



@162

10 years 
mulligan 
Timers implemented (including demonic thirteen bit timer).



@161

10 years 
mulligan 
Type errors fixed. Add16 with carry implemented.



@160

10 years 
campbell 
Patch to acc to parse 8051 memory spaces and output matita terms.



@159

10 years 
mulligan 
Code for timers now in place. Needs further implementation.



@158

10 years 
mulligan 
Lots of bugs fixed. SFR access implemented.



@157

10 years 
campbell 
Make proposed memory spaces semantics more explicit.



@156

10 years 
campbell 
pdata support



@155

10 years 
campbell 
More sensible handling of integer types and pointer casts.



@154

10 years 
campbell 
Minor test case changes



@153

10 years 
campbell 
Use appropriate memory chunks for 8051 pointers.



@152

10 years 
campbell 
Force whd form for memory during execution



@151

10 years 
mulligan 
Implementing SFR access. Type error.



@150

10 years 
mulligan 
Manages to load and emulate a simple array program. A few obscure bugs.



@149

10 years 
campbell 
Fill in a few details about 8051 extensions.



@148

10 years 
mulligan 
Bug fixed: storage destination for all logical operations was …



@147

10 years 
mulligan 
Changes made today: we now have an emulator that is able to emulate …



@146

10 years 
sacerdot 
Code improved.



@145

10 years 
mulligan 
Bug in LCALL fixed.



@144

10 years 
sacerdot 
The sp can also point to upper internal ram. Fixed everywhere.



@143

10 years 
sacerdot 
More SFRs (8052 ones were missing).
SFR catalogation (is that fully …



@142

10 years 
sacerdot 
Rough implementation of direct (i.e. no BIT) SFR access.
Note: I/O is …



@141

10 years 
sacerdot 
Minor cleanup.



@140

10 years 
sacerdot 
More cleanup.



@139

10 years 
sacerdot 
More cleanup.



@138

10 years 
sacerdot 
Several bug fixes and code cleanup.
New main file: test.ml to parse …



@137

10 years 
mulligan 
Bug noticed in string conversion routine. Note added.



@136

10 years 
mulligan 
Fixed erroneous string conversion of intel hex records.



@135

10 years 
mulligan 
Fixed checksum calculation check. Requires a *half add* (i.e. ignore …



@134

10 years 
mulligan 
Checksum check calculation still not working correctly: seems to work …



@133

10 years 
mulligan 
Fixed error in parser for intel hex format entries: entries consist of …



@132

10 years 
mulligan 
Type error fixed, also fixed error in hex_format_parser which …



@131

10 years 
mulligan 
Changes from this morning: checking checksum is correct for a …



@130

10 years 
mulligan 
Commit again? Not sure what happened. All Parser files were already …



@129

10 years 
sacerdot 
Better I/O modelling (still initial ideas).



@128

10 years 
mulligan 
Some utility functions useful across modules moved into new file Util. …



@127

10 years 
campbell 
Allow the storage of pointers in suitably large integers.



@126

10 years 
campbell 
Put in real pointer sizes.



@125

10 years 
campbell 
Unify memory space / pointer types.
Implement global variable …



@124

10 years 
campbell 
Initial work on Clight semantics with 8051 memory spaces.



@123

10 years 
mulligan 
IntelHex? file modified: string_of_intel_hex_entry implemented.



@122

10 years 
mulligan 
Added file for Intel hex format conversion. Renamed pretty files to …



@121

10 years 
mulligan 
Fixed obscure type error in pretty.



@120

10 years 
mulligan 
Fixed weird type errors in ASMInterpret.



@119

10 years 
mulligan 
Refactoring of ASMInterpret complete.



@118

10 years 
mulligan 
LCALL reimplemented.



@117

10 years 
mulligan 
Sorted out inconsistent ocaml state (???). Refactored ACALL.



@116

10 years 
mulligan 
RETs done.



@115

10 years 
mulligan 
Various jumps refactored.



@114

10 years 
mulligan 
Noticed redundancy in ANL and ORL instructions, removed. Introduced …



@113

10 years 
mulligan 
JC and JNC refactored.



@112

10 years 
mulligan 
PUSH, POP, XCH and XCHD refactored and tidied.



@111

10 years 
mulligan 
MOVC instructions refactored.



@110

10 years 
mulligan 
MOV instructions refactored.



@109

10 years 
mulligan 
Rotation and SWAP instructions refactored.



@108

10 years 
mulligan 
CPL instructions refactored.



@107

10 years 
mulligan 
CLR instruction refactored.



@106

10 years 
mulligan 
Same with ORL and XRL instructions.



@105

10 years 
mulligan 
Significantly improved implementation of ANL instructions.



@104

10 years 
mulligan 
Significantly improved implementation of DA instruction: code reduced …



@103

10 years 
mulligan 
fixed implementation of assembly, fixed typing error in execute.



@102

10 years 
mulligan 
Implemented INC DPTR. Type error related to polymorphic variants
though.



@101

10 years 
mulligan 
Fixing type errors in execute1.



@100

10 years 
mulligan 
More added to ASMInterpret.



@99

10 years 
mulligan 
Final cleanup



@98

10 years 
mulligan 
preliminary prettyprinting function (no usable output)



@97

10 years 
mulligan 
Move to polymorphic variants everywhere (scary...)



@96

10 years 
mulligan 
Tidying up repository.



@95

10 years 
mulligan 
fixed typing errors in ASMInterpret up to execute1.



@94

10 years 
sacerdot 
Minor comments.



@93

10 years 
mulligan 
Fixed INC DPTR to assert false.



@92

10 years 
mulligan 
Fixed physical interface file. Refactoring ASMInterface.



@91

10 years 
mulligan 
Finished porting/fix type errors in physical.



@90

10 years 
mulligan 
Ported physical.ml to be compatible with new bitvector code, started …



@89

10 years 
mulligan 
Fixed a really annoying bug in vect_to_int and int_to_vect



@88

10 years 
mulligan 
int_of_vect implemented.



@87

10 years 
mulligan 
Moved tentative to bit_vectors. Added .mli file.



@86

10 years 
mulligan 
Adding bit vector file.


