/**
*.Name         rnd_get
*.Title        Получение от таймера случайного числа
*
*.Descr        Эта функция получает случайное число от
*              таймера, который был предварительно
*              проинициализирован функцией rnd_set.
*
*.Proto        int rnd_get(void)
*
*.Params       Отсуствуют.
*
*.Return       Случайное число в диапазоне от 0, до
*              уменьшенного на 1 значения, заданного в
*              качестве параметра функции rnd_set().
*
*.Sample       random.c
**/

#include <stdio.h>
#include <conio.h>

int rnd_get(void) {

	int i;


// Выдаем команду CLC для фиксирования
// текущего значения регистра канала 2 таймера

	outp(0x43, 0x86);


// Вводим младший и старший байты счетчика

	i = inp(0x42);
	i = (inp(0x42) << 8) + i;

	return(i);
}

