Commit 79d00aff by malcolm

added more functions

parent c068d5cb
Showing with 37 additions and 0 deletions
......@@ -54,6 +54,17 @@ void csub()
cpush(a-b);
}
void crsub()
{
if(cstack_size<2)
return;
int a=cpeek();
cpop();
int b=cpeek();
cpop();
cpush(b-a);
}
void cdiv()
{
if(cstack_size<2)
......@@ -64,3 +75,14 @@ void cdiv()
cpop();
cpush(a/b);
}
void crdiv()
{
if(cstack_size<2)
return;
int a=cpeek();
cpop();
int b=cpeek();
cpop();
cpush(b/a);
}
......@@ -7,5 +7,7 @@ int cpeek();
void cadd();
void cmult();
void csub();
void crsub();
void cdiv();
void crdiv();
#endif
......@@ -72,12 +72,25 @@ void io_process(char* s, int ss)
terminal_writeint(cpeek());
terminal_putchar('\n');
}
else if(strncmp(s,"rsub",3)==0)
{
crsub();
terminal_writeint(cpeek());
terminal_putchar('\n');
}
else if(strncmp(s,"div",3)==0)
{
cdiv();
terminal_writeint(cpeek());
terminal_putchar('\n');
}
else if(strncmp(s,"rdiv",3)==0)
{
crdiv();
terminal_writeint(cpeek());
terminal_putchar('\n');
}
}
void kbd_irq()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment