/* * This file is part of Jehanne. * * Copyright (C) 2015-2017 Giacomo Tesio * * Jehanne 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, version 2 of the License. * * Jehanne 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 Jehanne. If not, see . */ #include #include void jehanne_sleep(unsigned int millisecs) { long wakeup; wakeup = sys_awake(millisecs); // give up the processor, in any case if(millisecs > 0) while(sys_rendezvous((void*)~0, (void*)1) == (void*)~0) if(jehanne_awakened(wakeup)) return; }