relaunch ontop of latest grbl edge
code very messy but tested
This commit is contained in:
42
sim/avr/interrupt.c
Normal file
42
sim/avr/interrupt.c
Normal file
@ -0,0 +1,42 @@
|
||||
/*
|
||||
interrupt.c - replacement for the avr library of the same name to provide
|
||||
dummy register variables
|
||||
|
||||
Part of Grbl Simulator
|
||||
|
||||
Copyright (c) 2012 Jens Geisler
|
||||
|
||||
Grbl is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Grbl is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Grbl. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "interrupt.h"
|
||||
|
||||
// dummy register variables
|
||||
uint16_t timsk0;
|
||||
uint16_t timsk1;
|
||||
uint16_t timsk2;
|
||||
uint16_t ocr1a;
|
||||
uint16_t ocr2a;
|
||||
uint16_t tcnt0;
|
||||
uint16_t tcnt2;
|
||||
uint16_t tccr0b;
|
||||
uint16_t tccr2b;
|
||||
uint16_t tccr1b;
|
||||
uint16_t tccr0a;
|
||||
uint16_t tccr1a;
|
||||
uint16_t tccr2a;
|
||||
uint16_t pcmsk0;
|
||||
uint16_t pcicr;
|
||||
|
||||
void sei() {};
|
82
sim/avr/interrupt.h
Normal file
82
sim/avr/interrupt.h
Normal file
@ -0,0 +1,82 @@
|
||||
/*
|
||||
interrupt.h - replacement for the avr include of the same name to provide
|
||||
dummy register variables and macros
|
||||
|
||||
Part of Grbl Simulator
|
||||
|
||||
Copyright (c) 2012 Jens Geisler
|
||||
|
||||
Grbl is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Grbl is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Grbl. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef interrupt_h
|
||||
#define interrupt_h
|
||||
|
||||
#include <inttypes.h>
|
||||
|
||||
// dummy register variables
|
||||
extern uint16_t timsk0;
|
||||
extern uint16_t timsk1;
|
||||
extern uint16_t timsk2;
|
||||
extern uint16_t tcnt0;
|
||||
extern uint16_t tcnt2;
|
||||
extern uint16_t tccr0b;
|
||||
extern uint16_t tccr0a;
|
||||
extern uint16_t tccr2a;
|
||||
extern uint16_t tccr2b;
|
||||
extern uint16_t tccr1b;
|
||||
extern uint16_t tccr1a;
|
||||
extern uint16_t ocr1a;
|
||||
extern uint16_t ocr2a;
|
||||
extern uint16_t pcmsk0;
|
||||
extern uint16_t pcicr;
|
||||
|
||||
// macros to turn avr interrupts into regular functions
|
||||
#define TIMER1_COMPA_vect
|
||||
#define ISR(a) void interrupt_ ## a ()
|
||||
|
||||
// enable interrupts does nothing in the simulation environment
|
||||
void sei();
|
||||
|
||||
// dummy macros for interrupt related registers
|
||||
#define TIMSK0 timsk0
|
||||
#define TIMSK1 timsk1
|
||||
#define TIMSK2 timsk2
|
||||
#define OCR1A ocr1a
|
||||
#define OCR2A ocr2a
|
||||
#define OCIE1A 0
|
||||
#define OCIE2A 0
|
||||
#define TCNT0 tcnt0
|
||||
#define TCNT2 tcnt2
|
||||
#define TCCR0B tccr0b
|
||||
#define TCCR0A tccr0a
|
||||
#define TCCR1A tccr1a
|
||||
#define TCCR1B tccr1b
|
||||
#define TCCR2A tccr2a
|
||||
#define TCCR2B tccr2b
|
||||
#define CS21 0
|
||||
#define CS10 0
|
||||
#define WGM13 0
|
||||
#define WGM12 0
|
||||
#define WGM11 0
|
||||
#define WGM10 0
|
||||
#define WGM21 0
|
||||
#define COM1A0 0
|
||||
#define COM1B0 0
|
||||
#define TOIE0 0
|
||||
#define TOIE2 0
|
||||
#define PCICR pcicr
|
||||
|
||||
#endif
|
21
sim/avr/io.h
Normal file
21
sim/avr/io.h
Normal file
@ -0,0 +1,21 @@
|
||||
/*
|
||||
io.h - dummy replacement for the avr include of the same name
|
||||
|
||||
Part of Grbl Simulator
|
||||
|
||||
Copyright (c) 2012 Jens Geisler
|
||||
|
||||
Grbl is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Grbl is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Grbl. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
26
sim/avr/pgmspace.c
Normal file
26
sim/avr/pgmspace.c
Normal file
@ -0,0 +1,26 @@
|
||||
/*
|
||||
pgmspace.c - replacement for the avr library of the same name to provide
|
||||
dummy functions
|
||||
|
||||
Part of Grbl Simulator
|
||||
|
||||
Copyright (c) 2012 Jens Geisler
|
||||
|
||||
Grbl is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Grbl is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Grbl. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
// this is not really ever called in the simulation
|
||||
char pgm_read_byte_near(const char* s) {
|
||||
return s[0];
|
||||
}
|
30
sim/avr/pgmspace.h
Normal file
30
sim/avr/pgmspace.h
Normal file
@ -0,0 +1,30 @@
|
||||
/*
|
||||
pgmspace.h - replacement for the avr include of the same name to provide
|
||||
dummy functions andd macros
|
||||
|
||||
Part of Grbl Simulator
|
||||
|
||||
Copyright (c) 2012 Jens Geisler
|
||||
|
||||
Grbl is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Grbl is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Grbl. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef pgmspace_h
|
||||
#define pgmspace_h
|
||||
|
||||
#define PSTR(s) s
|
||||
|
||||
char pgm_read_byte_near(const char* s);
|
||||
|
||||
#endif
|
21
sim/avr/sleep.h
Normal file
21
sim/avr/sleep.h
Normal file
@ -0,0 +1,21 @@
|
||||
/*
|
||||
sleep.h - dummy replacement for the avr include of the same name
|
||||
|
||||
Part of Grbl Simulator
|
||||
|
||||
Copyright (c) 2012 Jens Geisler
|
||||
|
||||
Grbl is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Grbl is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Grbl. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
Reference in New Issue
Block a user