SayoriOS 0.3.3

Функции | Переменные
Файл ports.c

Средства для работы с портами Подробнее...

`#include <stdarg.h>`
`#include <io/ports.h>`
`#include <lib/sprintf.h>`
`#include "io/serial_port.h"`
`#include "sys/scheduler.h"`
`#include "mem/vmm.h"`

См. исходные тексты.

## Функции
void | switch_qemu_logging ()
void | insl (uint16_t port, uint32_t *buffer, int32_t times)
| Чтение длинного слова через порт Подробнее...
void | outsl (uint16_t port, uint32_t *buffer, int32_t times)
| Запись длинного слова через порт Подробнее...
void | insw (uint16_t __port, void *__buf, unsigned long __n)
void | outsw (uint16_t __port, const void *__buf, unsigned long __n)
int32_t | is_transmit_empty (uint16_t port)
| Проверка занятости порта Подробнее...
uint8_t | serial_readchar (uint16_t port)
int8_t | serial_readchar_timeout (uint16_t port, size_t timeout, bool Alert)
void | io_wait (void)
| Небольшая задержка используя порт 128(0x80)
int | isprint (char c)
| Проверка, читаем ли символ Подробнее...
int | is_com_port (int port)
| Проверка на тип порта Подробнее...
void | qemu_printf (const char *text,...)
| Вывод QEMU через COM1 информации Подробнее...
void | new_qemu_printf (const char *format,...)

## Переменные
void(* | default_qemu_printf )(const char *text,...) = qemu_printf

## Подробное описание

Средства для работы с портами

Автор
  Пиминов Никита (nikit.nosp@m.a.pi.nosp@m.minof.nosp@m.f@ya.nosp@m.ndex..nosp@m.ru)

Версия
  0.3.5

Дата
  2022-11-01

Авторство
  Copyright SayoriOS Team (c) 2022-2024

См. определение в файле ports.c

## Функции

## ◆ insl()

void insl | ( | uint16_t | port,
|  | uint32_t * | buffer,
|  | int32_t | times
| ) |  |

Чтение длинного слова через порт

Аргументы

  port | - порт
  buffer | - данные
  times | - сколько данных прочесть

См. определение в файле ports.c строка 30

## ◆ is_com_port()

int is_com_port | ( | int | port | ) |

Проверка на тип порта

Аргументы

  port |

Возвращает
  Возвращает номер порта или 0 в случае если порт не в списке

См. определение в файле ports.c строка 120

## ◆ is_transmit_empty()

int32_t is_transmit_empty | ( | uint16_t | port | ) |

Проверка занятости порта

Возвращает
  int32_t - состояние

См. определение в файле ports.c строка 67

## ◆ isprint()

int isprint | ( | char | c | ) |

Проверка, читаем ли символ

Аргументы

  c | Символ

Возвращает
  1 если читаемый, 0 если нет

См. определение в файле ports.c строка 109

## ◆ outsl()

void outsl | ( | uint16_t | port,
|  | uint32_t * | buffer,
|  | int32_t | times
| ) |  |

Запись длинного слова через порт

Аргументы

  port | - порт
  buffer | - данные
  times | - сколько данных отправить

См. определение в файле ports.c строка 44

## ◆ qemu_printf()

void qemu_printf | ( | const char * | text,
|  |  | ...
| ) |  |

Вывод QEMU через COM1 информации

Аргументы

  text | Форматная строка
  ... | Дополнительные параметры

См. определение в файле ports.c строка 149