Skip to content

Commit 9de726c

Browse files
committed
format
1 parent 48dc59a commit 9de726c

1 file changed

Lines changed: 17 additions & 6 deletions

File tree

Main.hs

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -110,11 +110,21 @@ readHex = sum . zipWith (*) [1,16..] . reverse . ys
110110
--hex = do { string "0x"; xs <- some (sat (`elem` (['0'..'9']++['a'..'f']) . toLower)); return (readHex xs)}
111111
--bin = do { string "0b"; nat }
112112

113-
addr :: Parser Addr
114-
addr = (Addr . fromIntegral <$> do { char 'M'; space; char '['; space; n <- nat; space; char ']'; space; return n })
115-
<|> Addr . fromIntegral <$> nat
113+
-- TODO: switch with addr, change addraddr to mememem
114+
--mem = Addr . fromIntegral <$> nat
116115
-- <|> Addr . fromIntegral <$> hex
117116

117+
addr :: Parser Addr
118+
addr = do char 'M'
119+
space
120+
char '['
121+
space
122+
n <- nat
123+
space
124+
char ']'
125+
space
126+
return (Addr . fromIntegral $ n)
127+
118128
addraddr :: Parser AddrAddr
119129
addraddr = AddrAddr . fromIntegral <$> nat
120130

@@ -130,17 +140,18 @@ ioBus = do b <- upperLowerToken
130140
newline :: Parser Char
131141
newline = do { space; char '\n' }
132142

143+
noop, add, sub, nott, andd, cmp, lb, lbi, sb, sbi, inn, ja, j, jeq, jne, ds :: Parser Opcode
133144
noop = return NOOP
134145
add = do { r <- reg; space; char ','; space; ADD r <$> addr; }
135146
sub = do { r <- reg; space; char ','; space; SUB r <$> addr; }
136-
nott = NOT <$> reg
137-
andd = do { r <- reg; space; char ','; space; AND r <$> addr; }
147+
nott = NOT <$> reg
148+
andd = do { r <- reg; space; char ','; space; AND r <$> addr; }
138149
cmp = do { r <- reg; space; char ','; space; CMP r <$> addr; }
139150
lb = do { r <- reg; space; char ','; space; LB r <$> addr; }
140151
lbi = do { r <- reg; space; char ','; space; LBI r <$> addraddr; }
141152
sb = do { a <- addr; space; char ','; space; SB a <$> reg; }
142153
sbi = do { a <- addraddr; space; char ','; SBI a <$> reg; }
143-
inn = do { a <- addr; space; char ','; IN a <$> ioBus; }
154+
inn = do { a <- addr; space; char ','; IN a <$> ioBus; }
144155
ja = JA <$> addr
145156
j = J <$> offset
146157
jeq = JEQ <$> offset

0 commit comments

Comments
 (0)