Skip to content

OUT


向硬件端口输出一个值。

语法

declare function Out ( byval port as ushort , byval data as ubyte ) as long

用法

Out port,value

参数

port

要写入的硬件端口。

data

要写入的数据值。

描述

该函数将 value 发送到 port 并立即返回。

示例

start GeSHi

vb
'speakersound.bas
Sub Sound(ByVal freq As UInteger, dur As UInteger)
  Dim t As Double,f1 As Unsigned Short
    f1 = 1193181 \ freq
    Out &h61,Inp(&h61) Or 3
    Out &h43,&hb6
    Out &h42,LoByte(f1)
    Out &h42,HiByte(f1)
    t=Timer
    While ((Timer - t) * 1000) < dur
      Sleep 0,1
    Wend
    Out &h61,Inp(&h61) And &hfc
End Sub

Sound(523, 60)  'C5
Sound(587, 60)  'D5
Sound(659, 60)  'E5
Sound(698, 60)  'F5
Sound(784, 60)  'G5
Sound(880, 60)  'A5
Sound(988, 60)  'B5
Sound(1046, 60) 'C6

end GeSHi

平台差异

  • 在 Windows 和 Linux 版本中,当图形模式处于使用状态时,三个端口号(&H3C7、&H3C8、&H3C9)被图形库挂钩,以模拟 QB 的 VGA 调色板处理。此用途已弃用;请使用 Palette 来获取和设置调色板颜色。

  • 在 Windows 版本中使用真正的端口访问,程序需要为当前会话安装设备驱动程序。因此,使用硬件端口访问的 Windows 可执行文件在每次计算机重启后应以管理员权限运行。之后的运行不需要管理员权限,因为只是使用已安装的驱动程序。该驱动程序只有 3K 大小,嵌入在可执行文件中。

参见

  • Inp
  • Wait
  • Palette

返回 目录

基于 FreeBASIC 官方文档翻译 如有侵权请联系我们删除
FreeBASIC 是开源项目,与微软公司无隶属关系