You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
MicroDexed/mixer8.h

1390 lines
70 KiB

<!DOCTYPE html>
<html lang="en-US" class="theme-gitea">
<head data-suburl="">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<title>dcoredump/MicroDexed: MicroDexed is a compatible 6-operator-FM-synth based on the Teensy(-3.6/-4.x) Microcontroller. - mixer8.h at 890f7690b3bb6141fb4d8493c5f85a4cf2a3e51c - MicroDexed - Codeberg.org </title>
<link rel="manifest" href="data:application/json;base64,eyJuYW1lIjoiQ29kZWJlcmcub3JnIiwic2hvcnRfbmFtZSI6IkNvZGViZXJnLm9yZyIsInN0YXJ0X3VybCI6Imh0dHBzOi8vY29kZWJlcmcub3JnLyIsImljb25zIjpbeyJzcmMiOiJodHRwczovL2NvZGViZXJnLm9yZy9pbWcvbG9nby5wbmciLCJ0eXBlIjoiaW1hZ2UvcG5nIiwic2l6ZXMiOiI1MTJ4NTEyIn0seyJzcmMiOiJodHRwczovL2NvZGViZXJnLm9yZy9pbWcvbG9nby5zdmciLCJ0eXBlIjoiaW1hZ2Uvc3ZnK3htbCIsInNpemVzIjoiNTEyeDUxMiJ9XX0="/>
<meta name="theme-color" content="#2185D0">
<meta name="default-theme" content="gitea" />
<meta name="author" content="dcoredump" />
<meta name="description" content="MicroDexed - MicroDexed is a compatible 6-operator-FM-synth based on the Teensy(-3.6/-4.x) Microcontroller." />
<meta name="keywords" content="git,non-profit,foss,oss,free,software,open,source,code,hosting">
<meta name="referrer" content="no-referrer" />
<meta name="_csrf" content="Itgfj3tDHFCZ_rdlaxlAdNfWuKA6MTYyNjk1MjMwNjM2MDM2NzQ4OA" />
<meta name="_uid" content="69" />
<script>
window.config = {
AppVer: '1.14.5\u002b18-g8bea9c3fa',
AppSubUrl: '',
StaticUrlPrefix: '',
UseServiceWorker: true ,
csrf: 'Itgfj3tDHFCZ_rdlaxlAdNfWuKA6MTYyNjk1MjMwNjM2MDM2NzQ4OA',
HighlightJS: false,
SimpleMDE: false,
Tribute: false,
NotificationSettings: {
MinTimeout: 10000 ,
TimeoutStep: 10000 ,
MaxTimeout: 60000 ,
EventSourceUpdateTime: 10000 ,
},
EnableTimetracking: true,
PageIsProjects: false,
};
</script>
<link rel="icon" href="/img/logo.svg" type="image/svg+xml">
<link rel="alternate icon" href="/img/favicon.png" type="image/png">
<link rel="stylesheet" href="/css/index.css?v=4bc575e61ec5cecc0dc51306bc8af93b">
<noscript>
<style>
.dropdown:hover > .menu { display: block; }
.ui.secondary.menu .dropdown.item > .menu { margin-top: 0; }
</style>
</noscript>
<style class="list-search-style"></style>
<meta property="og:title" content="MicroDexed" />
<meta property="og:url" content="https://codeberg.org/dcoredump/MicroDexed" />
<meta property="og:description" content="MicroDexed is a compatible 6-operator-FM-synth based on the Teensy(-3.6/-4.x) Microcontroller." />
<meta property="og:type" content="object" />
<meta property="og:image" content="https://codeberg.org/user/avatar/dcoredump/-1" />
<meta property="og:site_name" content="Codeberg.org" />
<link rel="stylesheet" href="/codeberg.css">
<script async src="/stlview.js"></script>
<link rel="icon" href="https://design.codeberg.org/logo-kit/favicon.ico" type="image/x-icon" />
<link rel="icon" href="https://design.codeberg.org/logo-kit/favicon.svg" type="image/svg+xml" />
<link rel="apple-touch-icon" href="https://design.codeberg.org/logo-kit/apple-touch-icon.png" />
<link rel="stylesheet" href="https://design.codeberg.org/design-kit/codeberg.css" />
<script defer src="https://design.codeberg.org/design-kit/codeberg.js"></script>
<script defer type="module" src="https://design.codeberg.org/components/codeberg-components.js"></script>
<link href="https://fonts.codeberg.org/dist/inter/Inter%20Web/inter.css" rel="stylesheet" />
</head>
<body>
<div class="full height">
<noscript>This website works better with JavaScript.</noscript>
<div class="ui top secondary stackable main menu following bar light">
<div class="ui container" id="navbar">
<div class="item brand" style="justify-content: space-between;">
<a href="/">
<img class="ui mini image" with="30" height="30" src="/img/logo.svg">
</a>
<div class="ui basic icon button mobile-only" id="navbar-expand-toggle">
<i class="sidebar icon"></i>
</div>
</div>
<a class="item " href="/">Dashboard</a>
<a class="item " href="/issues">Issues</a>
<a class="item " href="/pulls">Pull Requests</a>
<a class="item " href="/milestones">Milestones</a>
<a class="item " href="/explore/repos">Explore</a>
<a class="item" href="https://docs.codeberg.org">Documentation</a>
<a class="item" href="/Codeberg/Community/issues">Codeberg Issues</a>
<a class="item" href="https://blog.codeberg.org">Blog</a>
<a class="item" href="https://join.codeberg.org">Join Codeberg e.V.</a>
<a class="item" href="https://liberapay.com/codeberg/donate">Donate</a>
<div class="right stackable menu">
<a class="active-stopwatch-trigger item ui label hidden" href="/%25!s%28%3cnil%3e%29/issues/%25!d%28%3cnil%3e%29">
<span class="text">
<span class="fitted item">
<svg viewBox="0 0 16 16" class="svg octicon-stopwatch" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M5.75.75A.75.75 0 016.5 0h3a.75.75 0 010 1.5h-.75v1l-.001.041a6.718 6.718 0 013.464 1.435l.007-.006.75-.75a.75.75 0 111.06 1.06l-.75.75-.006.007a6.75 6.75 0 11-10.548 0L2.72 5.03l-.75-.75a.75.75 0 011.06-1.06l.75.75.007.006A6.718 6.718 0 017.25 2.541a.756.756 0 010-.041v-1H6.5a.75.75 0 01-.75-.75zM8 14.5A5.25 5.25 0 108 4a5.25 5.25 0 000 10.5zm.389-6.7l1.33-1.33a.75.75 0 111.061 1.06L9.45 8.861A1.502 1.502 0 018 10.75a1.5 1.5 0 11.389-2.95z"/></svg>
<span class="red" style="position:absolute; right:-0.6em; top:-0.6em;"><svg viewBox="0 0 16 16" class="svg octicon-dot-fill" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M8 4a4 4 0 100 8 4 4 0 000-8z"/></svg></span>
</span>
<span class="sr-mobile-only">Active Time Tracker</span>
</span>
</a>
<div class="ui popup very wide">
<div class="df ac">
<a class="stopwatch-link df ac" href="/%25!s%28%3cnil%3e%29/issues/%25!d%28%3cnil%3e%29">
<svg viewBox="0 0 16 16" class="svg octicon-issue-opened" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zM0 8a8 8 0 1116 0A8 8 0 010 8zm9 3a1 1 0 11-2 0 1 1 0 012 0zm-.25-6.25a.75.75 0 00-1.5 0v3.5a.75.75 0 001.5 0v-3.5z"/></svg>
<span class="stopwatch-issue">#</span>
<span class="ui label blue stopwatch-time my-0 mx-4" data-seconds="">
</span>
</a>
<form class="stopwatch-commit" method="POST" action="/%25!s%28%3cnil%3e%29/issues/%25!d%28%3cnil%3e%29/times/stopwatch/toggle">
<input type="hidden" name="_csrf" value="Itgfj3tDHFCZ_rdlaxlAdNfWuKA6MTYyNjk1MjMwNjM2MDM2NzQ4OA">
<button
class="ui button mini compact basic icon fitted poping up"
data-content="Stop Timer"
data-position="top right" data-variation="small inverted"
><svg viewBox="0 0 16 16" class="svg octicon-square-fill" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M5.75 4A1.75 1.75 0 004 5.75v4.5c0 .966.784 1.75 1.75 1.75h4.5A1.75 1.75 0 0012 10.25v-4.5A1.75 1.75 0 0010.25 4h-4.5z"/></svg></button>
</form>
<form class="stopwatch-cancel" method="POST" action="/%25!s%28%3cnil%3e%29/issues/%25!d%28%3cnil%3e%29/times/stopwatch/cancel">
<input type="hidden" name="_csrf" value="Itgfj3tDHFCZ_rdlaxlAdNfWuKA6MTYyNjk1MjMwNjM2MDM2NzQ4OA">
<button
class="ui button mini compact basic icon fitted poping up"
data-content="Discard"
data-position="top right" data-variation="small inverted"
><svg viewBox="0 0 16 16" class="svg octicon-trashcan" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M6.5 1.75a.25.25 0 01.25-.25h2.5a.25.25 0 01.25.25V3h-3V1.75zm4.5 0V3h2.25a.75.75 0 010 1.5H2.75a.75.75 0 010-1.5H5V1.75C5 .784 5.784 0 6.75 0h2.5C10.216 0 11 .784 11 1.75zM4.496 6.675a.75.75 0 10-1.492.15l.66 6.6A1.75 1.75 0 005.405 15h5.19c.9 0 1.652-.681 1.741-1.576l.66-6.6a.75.75 0 00-1.492-.149l-.66 6.6a.25.25 0 01-.249.225h-5.19a.25.25 0 01-.249-.225l-.66-6.6z"/></svg></button>
</form>
</div>
</div>
<a href="/notifications" class="item poping up" data-content='Notifications' data-variation="tiny inverted">
<span class="text">
<span class="fitted"><svg viewBox="0 0 16 16" class="svg octicon-bell" width="16" height="16" aria-hidden="true"><path d="M8 16a2 2 0 001.985-1.75c.017-.137-.097-.25-.235-.25h-3.5c-.138 0-.252.113-.235.25A2 2 0 008 16z"/><path fill-rule="evenodd" d="M8 1.5A3.5 3.5 0 004.5 5v2.947c0 .346-.102.683-.294.97l-1.703 2.556a.018.018 0 00-.003.01l.001.006c0 .002.002.004.004.006a.017.017 0 00.006.004l.007.001h10.964l.007-.001a.016.016 0 00.006-.004.016.016 0 00.004-.006l.001-.007a.017.017 0 00-.003-.01l-1.703-2.554a1.75 1.75 0 01-.294-.97V5A3.5 3.5 0 008 1.5zM3 5a5 5 0 0110 0v2.947c0 .05.015.098.042.139l1.703 2.555A1.518 1.518 0 0113.482 13H2.518a1.518 1.518 0 01-1.263-2.36l1.703-2.554A.25.25 0 003 7.947V5z"/></svg></span>
<span class="sr-mobile-only">Notifications</span>
<span class="ui red label hidden notification_count">
0
</span>
</span>
</a>
<div class="ui dropdown jump item poping up" data-content="Create…" data-variation="tiny inverted">
<span class="text">
<span class="fitted"><svg viewBox="0 0 16 16" class="svg octicon-plus" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M7.75 2a.75.75 0 01.75.75V7h4.25a.75.75 0 110 1.5H8.5v4.25a.75.75 0 11-1.5 0V8.5H2.75a.75.75 0 010-1.5H7V2.75A.75.75 0 017.75 2z"/></svg></span>
<span class="sr-mobile-only">Create</span>
<span class="fitted not-mobile"><svg viewBox="0 0 16 16" class="svg octicon-triangle-down" width="16" height="16" aria-hidden="true"><path d="M4.427 7.427l3.396 3.396a.25.25 0 00.354 0l3.396-3.396A.25.25 0 0011.396 7H4.604a.25.25 0 00-.177.427z"/></svg></span>
</span>
<div class="menu">
<a class="item" href="/repo/create">
<span class="fitted"><svg viewBox="0 0 16 16" class="svg octicon-plus" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M7.75 2a.75.75 0 01.75.75V7h4.25a.75.75 0 110 1.5H8.5v4.25a.75.75 0 11-1.5 0V8.5H2.75a.75.75 0 010-1.5H7V2.75A.75.75 0 017.75 2z"/></svg></span> New Repository
</a>
<a class="item" href="/repo/migrate">
<span class="fitted"><svg viewBox="0 0 16 16" class="svg octicon-repo-push" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M1 2.5A2.5 2.5 0 013.5 0h8.75a.75.75 0 01.75.75v3.5a.75.75 0 01-1.5 0V1.5h-8a1 1 0 00-1 1v6.708A2.492 2.492 0 013.5 9h3.25a.75.75 0 010 1.5H3.5a1 1 0 100 2h5.75a.75.75 0 010 1.5H3.5A2.5 2.5 0 011 11.5v-9zm13.23 7.79a.75.75 0 001.06-1.06l-2.505-2.505a.75.75 0 00-1.06 0L9.22 9.229a.75.75 0 001.06 1.061l1.225-1.224v6.184a.75.75 0 001.5 0V9.066l1.224 1.224z"/></svg></span> New Migration
</a>
<a class="item" href="/org/create">
<span class="fitted"><svg viewBox="0 0 16 16" class="svg octicon-organization" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M1.5 14.25c0 .138.112.25.25.25H4v-1.25a.75.75 0 01.75-.75h2.5a.75.75 0 01.75.75v1.25h2.25a.25.25 0 00.25-.25V1.75a.25.25 0 00-.25-.25h-8.5a.25.25 0 00-.25.25v12.5zM1.75 16A1.75 1.75 0 010 14.25V1.75C0 .784.784 0 1.75 0h8.5C11.216 0 12 .784 12 1.75v12.5c0 .085-.006.168-.018.25h2.268a.25.25 0 00.25-.25V8.285a.25.25 0 00-.111-.208l-1.055-.703a.75.75 0 11.832-1.248l1.055.703c.487.325.779.871.779 1.456v5.965A1.75 1.75 0 0114.25 16h-3.5a.75.75 0 01-.197-.026c-.099.017-.2.026-.303.026h-3a.75.75 0 01-.75-.75V14h-1v1.25a.75.75 0 01-.75.75h-3zM3 3.75A.75.75 0 013.75 3h.5a.75.75 0 010 1.5h-.5A.75.75 0 013 3.75zM3.75 6a.75.75 0 000 1.5h.5a.75.75 0 000-1.5h-.5zM3 9.75A.75.75 0 013.75 9h.5a.75.75 0 010 1.5h-.5A.75.75 0 013 9.75zM7.75 9a.75.75 0 000 1.5h.5a.75.75 0 000-1.5h-.5zM7 6.75A.75.75 0 017.75 6h.5a.75.75 0 010 1.5h-.5A.75.75 0 017 6.75zM7.75 3a.75.75 0 000 1.5h.5a.75.75 0 000-1.5h-.5z"/></svg></span> New Organization
</a>
</div>
</div>
<div class="ui dropdown jump item poping up" tabindex="-1" data-content="Profile and Settings…" data-variation="tiny inverted">
<span class="text">
<img class="ui avatar image tiny" src="/avatars/93872ea466df0b633c68d6f2fde3ea3b?size=48" title="Holger Wirtz" width="24" height="24"/>
<span class="sr-only">Profile and Settings</span>
<span class="mobile-only">dcoredump</span>
<span class="fitted not-mobile" tabindex="-1"><svg viewBox="0 0 16 16" class="svg octicon-triangle-down" width="16" height="16" aria-hidden="true"><path d="M4.427 7.427l3.396 3.396a.25.25 0 00.354 0l3.396-3.396A.25.25 0 0011.396 7H4.604a.25.25 0 00-.177.427z"/></svg></span>
</span>
<div class="menu user-menu" tabindex="-1">
<div class="ui header">
Signed in as <strong>dcoredump</strong>
</div>
<div class="divider"></div>
<a class="item" href="/dcoredump">
<svg viewBox="0 0 16 16" class="svg octicon-person" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M10.5 5a2.5 2.5 0 11-5 0 2.5 2.5 0 015 0zm.061 3.073a4 4 0 10-5.123 0 6.004 6.004 0 00-3.431 5.142.75.75 0 001.498.07 4.5 4.5 0 018.99 0 .75.75 0 101.498-.07 6.005 6.005 0 00-3.432-5.142z"/></svg>
Profile
</a>
<a class="item" href="/dcoredump?tab=stars">
<svg viewBox="0 0 16 16" class="svg octicon-star" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M8 .25a.75.75 0 01.673.418l1.882 3.815 4.21.612a.75.75 0 01.416 1.279l-3.046 2.97.719 4.192a.75.75 0 01-1.088.791L8 12.347l-3.766 1.98a.75.75 0 01-1.088-.79l.72-4.194L.818 6.374a.75.75 0 01.416-1.28l4.21-.611L7.327.668A.75.75 0 018 .25zm0 2.445L6.615 5.5a.75.75 0 01-.564.41l-3.097.45 2.24 2.184a.75.75 0 01.216.664l-.528 3.084 2.769-1.456a.75.75 0 01.698 0l2.77 1.456-.53-3.084a.75.75 0 01.216-.664l2.24-2.183-3.096-.45a.75.75 0 01-.564-.41L8 2.694v.001z"/></svg>
Starred
</a>
<a class=" item" href="/user/settings">
<svg viewBox="0 0 16 16" class="svg octicon-tools" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M5.433 2.304A4.494 4.494 0 003.5 6c0 1.598.832 3.002 2.09 3.802.518.328.929.923.902 1.64v.008l-.164 3.337a.75.75 0 11-1.498-.073l.163-3.33c.002-.085-.05-.216-.207-.316A5.996 5.996 0 012 6a5.994 5.994 0 012.567-4.92 1.482 1.482 0 011.673-.04c.462.296.76.827.76 1.423v2.82c0 .082.041.16.11.206l.75.51a.25.25 0 00.28 0l.75-.51A.25.25 0 009 5.282V2.463c0-.596.298-1.127.76-1.423a1.482 1.482 0 011.673.04A5.994 5.994 0 0114 6a5.996 5.996 0 01-2.786 5.068c-.157.1-.209.23-.207.315l.163 3.33a.75.75 0 11-1.498.074l-.164-3.345c-.027-.717.384-1.312.902-1.64A4.496 4.496 0 0012.5 6a4.494 4.494 0 00-1.933-3.696c-.024.017-.067.067-.067.16v2.818a1.75 1.75 0 01-.767 1.448l-.75.51a1.75 1.75 0 01-1.966 0l-.75-.51A1.75 1.75 0 015.5 5.282V2.463c0-.092-.043-.142-.067-.159zm.01-.005z"/></svg>
Settings
</a>
<a class="item" target="_blank" rel="noopener noreferrer" href="https://docs.gitea.io">
<svg viewBox="0 0 16 16" class="svg octicon-question" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zM0 8a8 8 0 1116 0A8 8 0 010 8zm9 3a1 1 0 11-2 0 1 1 0 012 0zM6.92 6.085c.081-.16.19-.299.34-.398.145-.097.371-.187.74-.187.28 0 .553.087.738.225A.613.613 0 019 6.25c0 .177-.04.264-.077.318a.956.956 0 01-.277.245c-.076.051-.158.1-.258.161l-.007.004a7.728 7.728 0 00-.313.195 2.416 2.416 0 00-.692.661.75.75 0 001.248.832.956.956 0 01.276-.245 6.3 6.3 0 01.26-.16l.006-.004c.093-.057.204-.123.313-.195.222-.149.487-.355.692-.662.214-.32.329-.702.329-1.15 0-.76-.36-1.348-.863-1.725A2.76 2.76 0 008 4c-.631 0-1.155.16-1.572.438-.413.276-.68.638-.849.977a.75.75 0 101.342.67z"/></svg>
Help
</a>
<div class="divider"></div>
<a class="item link-action" href data-url="/user/logout" data-redirect="/">
<svg viewBox="0 0 16 16" class="svg octicon-sign-out" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M2 2.75C2 1.784 2.784 1 3.75 1h2.5a.75.75 0 010 1.5h-2.5a.25.25 0 00-.25.25v10.5c0 .138.112.25.25.25h2.5a.75.75 0 010 1.5h-2.5A1.75 1.75 0 012 13.25V2.75zm10.44 4.5H6.75a.75.75 0 000 1.5h5.69l-1.97 1.97a.75.75 0 101.06 1.06l3.25-3.25a.75.75 0 000-1.06l-3.25-3.25a.75.75 0 10-1.06 1.06l1.97 1.97z"/></svg>
Sign Out
</a>
</div>
</div>
</div>
</div>
</div>
<div class="page-content repository file list ">
<div class="header-wrapper">
<div class="ui container">
<div class="repo-header">
<div class="repo-title-wrap df fc">
<div class="repo-title">
<div class="repo-icon mr-3">
<svg viewBox="0 0 16 16" class="svg octicon-repo" width="32" height="32" aria-hidden="true"><path fill-rule="evenodd" d="M2 2.5A2.5 2.5 0 014.5 0h8.75a.75.75 0 01.75.75v12.5a.75.75 0 01-.75.75h-2.5a.75.75 0 110-1.5h1.75v-2h-8a1 1 0 00-.714 1.7.75.75 0 01-1.072 1.05A2.495 2.495 0 012 11.5v-9zm10.5-1V9h-8c-.356 0-.694.074-1 .208V2.5a1 1 0 011-1h8zM5 12.25v3.25a.25.25 0 00.4.2l1.45-1.087a.25.25 0 01.3 0L8.6 15.7a.25.25 0 00.4-.2v-3.25a.25.25 0 00-.25-.25h-3.5a.25.25 0 00-.25.25z"/></svg>
</div>
<a href="/dcoredump">dcoredump</a>
<div class="mx-2">/</div>
<a href="/dcoredump/MicroDexed">MicroDexed</a>
<div class="labels df ac fw">
</div>
</div>
</div>
<div class="repo-buttons">
<form method="post" action="/dcoredump/MicroDexed/action/unwatch?redirect_to=%2fdcoredump%2fMicroDexed%2fsrc%2fcommit%2f890f7690b3bb6141fb4d8493c5f85a4cf2a3e51c%2fmixer8.h">
<input type="hidden" name="_csrf" value="Itgfj3tDHFCZ_rdlaxlAdNfWuKA6MTYyNjk1MjMwNjM2MDM2NzQ4OA">
<div class="ui labeled button" tabindex="0">
<button type="submit" class="ui compact small basic button">
<svg viewBox="0 0 16 16" class="svg octicon-eye-closed" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M.143 2.31a.75.75 0 011.047-.167l14.5 10.5a.75.75 0 11-.88 1.214l-2.248-1.628C11.346 13.19 9.792 14 8 14c-1.981 0-3.67-.992-4.933-2.078C1.797 10.832.88 9.577.43 8.9a1.618 1.618 0 010-1.797c.353-.533.995-1.42 1.868-2.305L.31 3.357A.75.75 0 01.143 2.31zm3.386 3.378a14.21 14.21 0 00-1.85 2.244.12.12 0 00-.022.068c0 .021.006.045.022.068.412.621 1.242 1.75 2.366 2.717C5.175 11.758 6.527 12.5 8 12.5c1.195 0 2.31-.488 3.29-1.191L9.063 9.695A2 2 0 016.058 7.52l-2.53-1.832zM8 3.5c-.516 0-1.017.09-1.499.251a.75.75 0 11-.473-1.423A6.23 6.23 0 018 2c1.981 0 3.67.992 4.933 2.078 1.27 1.091 2.187 2.345 2.637 3.023a1.619 1.619 0 010 1.798c-.11.166-.248.365-.41.587a.75.75 0 11-1.21-.887c.148-.201.272-.382.371-.53a.119.119 0 000-.137c-.412-.621-1.242-1.75-2.366-2.717C10.825 4.242 9.473 3.5 8 3.5z"/></svg>Unwatch
</button>
<a class="ui basic label" href="/dcoredump/MicroDexed/watchers">
4
</a>
</div>
</form>
<form method="post" action="/dcoredump/MicroDexed/action/unstar?redirect_to=%2fdcoredump%2fMicroDexed%2fsrc%2fcommit%2f890f7690b3bb6141fb4d8493c5f85a4cf2a3e51c%2fmixer8.h">
<input type="hidden" name="_csrf" value="Itgfj3tDHFCZ_rdlaxlAdNfWuKA6MTYyNjk1MjMwNjM2MDM2NzQ4OA">
<div class="ui labeled button" tabindex="0">
<button type="submit" class="ui compact small basic button">
<svg viewBox="0 0 16 16" class="svg octicon-star-fill" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M8 .25a.75.75 0 01.673.418l1.882 3.815 4.21.612a.75.75 0 01.416 1.279l-3.046 2.97.719 4.192a.75.75 0 01-1.088.791L8 12.347l-3.766 1.98a.75.75 0 01-1.088-.79l.72-4.194L.818 6.374a.75.75 0 01.416-1.28l4.21-.611L7.327.668A.75.75 0 018 .25z"/></svg>Unstar
</button>
<a class="ui basic label" href="/dcoredump/MicroDexed/stars">
7
</a>
</div>
</form>
<div class="ui labeled button poping up disabled" data-content="You cannot fork a repository you own." data-position="top center" data-variation="tiny" tabindex="0">
<a class="ui compact small basic button">
<svg viewBox="0 0 16 16" class="svg octicon-repo-forked" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M5 3.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm0 2.122a2.25 2.25 0 10-1.5 0v.878A2.25 2.25 0 005.75 8.5h1.5v2.128a2.251 2.251 0 101.5 0V8.5h1.5a2.25 2.25 0 002.25-2.25v-.878a2.25 2.25 0 10-1.5 0v.878a.75.75 0 01-.75.75h-4.5A.75.75 0 015 6.25v-.878zm3.75 7.378a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm3-8.75a.75.75 0 100-1.5.75.75 0 000 1.5z"/></svg>Fork
</a>
<a class="ui basic label" href="/dcoredump/MicroDexed/forks">
7
</a>
</div>
</div>
</div>
</div>
<div class="ui tabs container">
<div class="ui tabular stackable menu navbar">
<a class="active item" href="/dcoredump/MicroDexed/src/commit/890f7690b3bb6141fb4d8493c5f85a4cf2a3e51c">
<svg viewBox="0 0 16 16" class="svg octicon-code" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M4.72 3.22a.75.75 0 011.06 1.06L2.06 8l3.72 3.72a.75.75 0 11-1.06 1.06L.47 8.53a.75.75 0 010-1.06l4.25-4.25zm6.56 0a.75.75 0 10-1.06 1.06L13.94 8l-3.72 3.72a.75.75 0 101.06 1.06l4.25-4.25a.75.75 0 000-1.06l-4.25-4.25z"/></svg> Code
</a>
<a class=" item" href="/dcoredump/MicroDexed/issues">
<svg viewBox="0 0 16 16" class="svg octicon-issue-opened" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zM0 8a8 8 0 1116 0A8 8 0 010 8zm9 3a1 1 0 11-2 0 1 1 0 012 0zm-.25-6.25a.75.75 0 00-1.5 0v3.5a.75.75 0 001.5 0v-3.5z"/></svg> Issues
<span class="ui blue small label">6</span>
</a>
<a class=" item" href="/dcoredump/MicroDexed/pulls">
<svg viewBox="0 0 16 16" class="svg octicon-git-pull-request" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M7.177 3.073L9.573.677A.25.25 0 0110 .854v4.792a.25.25 0 01-.427.177L7.177 3.427a.25.25 0 010-.354zM3.75 2.5a.75.75 0 100 1.5.75.75 0 000-1.5zm-2.25.75a2.25 2.25 0 113 2.122v5.256a2.251 2.251 0 11-1.5 0V5.372A2.25 2.25 0 011.5 3.25zM11 2.5h-1V4h1a1 1 0 011 1v5.628a2.251 2.251 0 101.5 0V5A2.5 2.5 0 0011 2.5zm1 10.25a.75.75 0 111.5 0 .75.75 0 01-1.5 0zM3.75 12a.75.75 0 100 1.5.75.75 0 000-1.5z"/></svg> Pull Requests
</a>
<a class=" item" href="/dcoredump/MicroDexed/releases">
<svg viewBox="0 0 16 16" class="svg octicon-tag" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M2.5 7.775V2.75a.25.25 0 01.25-.25h5.025a.25.25 0 01.177.073l6.25 6.25a.25.25 0 010 .354l-5.025 5.025a.25.25 0 01-.354 0l-6.25-6.25a.25.25 0 01-.073-.177zm-1.5 0V2.75C1 1.784 1.784 1 2.75 1h5.025c.464 0 .91.184 1.238.513l6.25 6.25a1.75 1.75 0 010 2.474l-5.026 5.026a1.75 1.75 0 01-2.474 0l-6.25-6.25A1.75 1.75 0 011 7.775zM6 5a1 1 0 100 2 1 1 0 000-2z"/></svg> Releases
<span class="ui blue small label">1</span>
</a>
<a class=" item" href="/dcoredump/MicroDexed/wiki" >
<svg viewBox="0 0 16 16" class="svg octicon-book" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M0 1.75A.75.75 0 01.75 1h4.253c1.227 0 2.317.59 3 1.501A3.744 3.744 0 0111.006 1h4.245a.75.75 0 01.75.75v10.5a.75.75 0 01-.75.75h-4.507a2.25 2.25 0 00-1.591.659l-.622.621a.75.75 0 01-1.06 0l-.622-.621A2.25 2.25 0 005.258 13H.75a.75.75 0 01-.75-.75V1.75zm8.755 3a2.25 2.25 0 012.25-2.25H14.5v9h-3.757c-.71 0-1.4.201-1.992.572l.004-7.322zm-1.504 7.324l.004-5.073-.002-2.253A2.25 2.25 0 005.003 2.5H1.5v9h3.757a3.75 3.75 0 011.994.574z"/></svg> Wiki
</a>
<a class=" item" href="/dcoredump/MicroDexed/activity">
<svg viewBox="0 0 16 16" class="svg octicon-pulse" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M6 2a.75.75 0 01.696.471L10 10.731l1.304-3.26A.75.75 0 0112 7h3.25a.75.75 0 010 1.5h-2.742l-1.812 4.528a.75.75 0 01-1.392 0L6 4.77 4.696 8.03A.75.75 0 014 8.5H.75a.75.75 0 010-1.5h2.742l1.812-4.529A.75.75 0 016 2z"/></svg> Activity
</a>
<div class="right menu">
<a class=" item" href="/dcoredump/MicroDexed/settings">
<svg viewBox="0 0 16 16" class="svg octicon-tools" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M5.433 2.304A4.494 4.494 0 003.5 6c0 1.598.832 3.002 2.09 3.802.518.328.929.923.902 1.64v.008l-.164 3.337a.75.75 0 11-1.498-.073l.163-3.33c.002-.085-.05-.216-.207-.316A5.996 5.996 0 012 6a5.994 5.994 0 012.567-4.92 1.482 1.482 0 011.673-.04c.462.296.76.827.76 1.423v2.82c0 .082.041.16.11.206l.75.51a.25.25 0 00.28 0l.75-.51A.25.25 0 009 5.282V2.463c0-.596.298-1.127.76-1.423a1.482 1.482 0 011.673.04A5.994 5.994 0 0114 6a5.996 5.996 0 01-2.786 5.068c-.157.1-.209.23-.207.315l.163 3.33a.75.75 0 11-1.498.074l-.164-3.345c-.027-.717.384-1.312.902-1.64A4.496 4.496 0 0012.5 6a4.494 4.494 0 00-1.933-3.696c-.024.017-.067.067-.067.16v2.818a1.75 1.75 0 01-.767 1.448l-.75.51a1.75 1.75 0 01-1.966 0l-.75-.51A1.75 1.75 0 015.5 5.282V2.463c0-.092-.043-.142-.067-.159zm.01-.005z"/></svg> Settings
</a>
</div>
</div>
</div>
<div class="ui tabs divider"></div>
</div>
<div class="ui container ">
<div class="ui repo-description">
<div id="repo-desc">
<span class="description">MicroDexed is a compatible 6-operator-FM-synth based on the Teensy(-3.6/-4.x) Microcontroller.</span>
<a class="link" href="https://www.parasitstudio.de">https://www.parasitstudio.de</a>
</div>
</div>
<div class="mt-3" id="repo-topics">
<a class="ui repo-topic large label topic" href="/explore/repos?q=cpp&topic=1">cpp</a><a class="ui repo-topic large label topic" href="/explore/repos?q=micro&topic=1">micro</a><a class="ui repo-topic large label topic" href="/explore/repos?q=teensy&topic=1">teensy</a>
<a id="manage_topic" class="muted">Manage Topics</a>
</div>
<div class="ui repo-topic-edit grid form" id="topic_edit" style="display:none">
<div class="fourteen wide column">
<div class="field">
<div class="ui fluid multiple search selection dropdown">
<input type="hidden" name="topics" value="cpp,micro,teensy">
<div class="ui small label topic transition visible" data-value="cpp" style="display: inline-block !important; cursor: default;">cpp<svg viewBox="0 0 16 16" class="delete icon ml-3 mt-1 svg octicon-x" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M3.72 3.72a.75.75 0 011.06 0L8 6.94l3.22-3.22a.75.75 0 111.06 1.06L9.06 8l3.22 3.22a.75.75 0 11-1.06 1.06L8 9.06l-3.22 3.22a.75.75 0 01-1.06-1.06L6.94 8 3.72 4.78a.75.75 0 010-1.06z"/></svg></div>
<div class="ui small label topic transition visible" data-value="micro" style="display: inline-block !important; cursor: default;">micro<svg viewBox="0 0 16 16" class="delete icon ml-3 mt-1 svg octicon-x" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M3.72 3.72a.75.75 0 011.06 0L8 6.94l3.22-3.22a.75.75 0 111.06 1.06L9.06 8l3.22 3.22a.75.75 0 11-1.06 1.06L8 9.06l-3.22 3.22a.75.75 0 01-1.06-1.06L6.94 8 3.72 4.78a.75.75 0 010-1.06z"/></svg></div>
<div class="ui small label topic transition visible" data-value="teensy" style="display: inline-block !important; cursor: default;">teensy<svg viewBox="0 0 16 16" class="delete icon ml-3 mt-1 svg octicon-x" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M3.72 3.72a.75.75 0 011.06 0L8 6.94l3.22-3.22a.75.75 0 111.06 1.06L9.06 8l3.22 3.22a.75.75 0 11-1.06 1.06L8 9.06l-3.22 3.22a.75.75 0 01-1.06-1.06L6.94 8 3.72 4.78a.75.75 0 010-1.06z"/></svg></div>
<div class="text"></div>
</div>
</div>
</div>
<div class="two wide column">
<a class="ui button primary" href="javascript:;" id="save_topic"
data-link="/dcoredump/MicroDexed/topics">Done</a>
</div>
</div>
<div class="hide" id="validate_prompt">
<span id="count_prompt">You can not select more than 25 topics</span>
<span id="format_prompt">Topics must start with a letter or number, can include dashes (&#39;-&#39;) and can be up to 35 characters long.</span>
</div>
<div class="ui segments repository-summary repository-summary-language-stats mt-3">
<div class="ui segment sub-menu repository-menu">
<div class="ui two horizontal center link list">
<div class="item">
<a class="ui" href="/dcoredump/MicroDexed/commits/commit/890f7690b3bb6141fb4d8493c5f85a4cf2a3e51c"><svg viewBox="0 0 16 16" class="svg octicon-history" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M1.643 3.143L.427 1.927A.25.25 0 000 2.104V5.75c0 .138.112.25.25.25h3.646a.25.25 0 00.177-.427L2.715 4.215a6.5 6.5 0 11-1.18 4.458.75.75 0 10-1.493.154 8.001 8.001 0 101.6-5.684zM7.75 4a.75.75 0 01.75.75v2.992l2.028.812a.75.75 0 01-.557 1.392l-2.5-1A.75.75 0 017 8.25v-3.5A.75.75 0 017.75 4z"/></svg> <b>733</b> Commits</a>
</div>
<div class="item">
<a class="ui" href="/dcoredump/MicroDexed/branches"><svg viewBox="0 0 16 16" class="svg octicon-git-branch" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M11.75 2.5a.75.75 0 100 1.5.75.75 0 000-1.5zm-2.25.75a2.25 2.25 0 113 2.122V6A2.5 2.5 0 0110 8.5H6a1 1 0 00-1 1v1.128a2.251 2.251 0 11-1.5 0V5.372a2.25 2.25 0 111.5 0v1.836A2.492 2.492 0 016 7h4a1 1 0 001-1v-.628A2.25 2.25 0 019.5 3.25zM4.25 12a.75.75 0 100 1.5.75.75 0 000-1.5zM3.5 3.25a.75.75 0 111.5 0 .75.75 0 01-1.5 0z"/></svg> <b>2</b> Branches</a>
</div>
<div class="item">
<a class="ui" href="/dcoredump/MicroDexed/tags"><svg viewBox="0 0 16 16" class="svg octicon-tag" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M2.5 7.775V2.75a.25.25 0 01.25-.25h5.025a.25.25 0 01.177.073l6.25 6.25a.25.25 0 010 .354l-5.025 5.025a.25.25 0 01-.354 0l-6.25-6.25a.25.25 0 01-.073-.177zm-1.5 0V2.75C1 1.784 1.784 1 2.75 1h5.025c.464 0 .91.184 1.238.513l6.25 6.25a1.75 1.75 0 010 2.474l-5.026 5.026a1.75 1.75 0 01-2.474 0l-6.25-6.25A1.75 1.75 0 011 7.775zM6 5a1 1 0 100 2 1 1 0 000-2z"/></svg> <b>1</b> Tag</a>
</div>
<div class="item">
<span class="ui"><svg viewBox="0 0 16 16" class="svg octicon-database" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M2.5 3.5c0-.133.058-.318.282-.55.227-.237.592-.484 1.1-.708C4.899 1.795 6.354 1.5 8 1.5c1.647 0 3.102.295 4.117.742.51.224.874.47 1.101.707.224.233.282.418.282.551 0 .133-.058.318-.282.55-.227.237-.592.484-1.1.708C11.101 5.205 9.646 5.5 8 5.5c-1.647 0-3.102-.295-4.117-.742-.51-.224-.874-.47-1.101-.707-.224-.233-.282-.418-.282-.551zM1 3.5c0-.626.292-1.165.7-1.59.406-.422.956-.767 1.579-1.041C4.525.32 6.195 0 8 0c1.805 0 3.475.32 4.722.869.622.274 1.172.62 1.578 1.04.408.426.7.965.7 1.591v9c0 .626-.292 1.165-.7 1.59-.406.422-.956.767-1.579 1.041C11.476 15.68 9.806 16 8 16c-1.805 0-3.475-.32-4.721-.869-.623-.274-1.173-.62-1.579-1.04-.408-.426-.7-.965-.7-1.591v-9zM2.5 8V5.724c.241.15.503.286.779.407C4.525 6.68 6.195 7 8 7c1.805 0 3.475-.32 4.722-.869.275-.121.537-.257.778-.407V8c0 .133-.058.318-.282.55-.227.237-.592.484-1.1.708C11.101 9.705 9.646 10 8 10c-1.647 0-3.102-.295-4.117-.742-.51-.224-.874-.47-1.101-.707C2.558 8.318 2.5 8.133 2.5 8zm0 2.225V12.5c0 .133.058.318.282.55.227.237.592.484 1.1.708 1.016.447 2.471.742 4.118.742 1.647 0 3.102-.295 4.117-.742.51-.224.874-.47 1.101-.707.224-.233.282-.418.282-.551v-2.275c-.241.15-.503.285-.778.406-1.247.549-2.917.869-4.722.869-1.805 0-3.475-.32-4.721-.869a6.236 6.236 0 01-.779-.406z"/></svg> <b>185 MiB</b></span>
</div>
</div>
</div>
<div class="ui segment sub-menu language-stats-details" style="display: none">
<div class="ui horizontal center link list">
<div class="item df ac jc">
<i class="color-icon mr-3" style="background-color: #f34b7d"></i>
<span class="bold mr-3">
C&#43;&#43;
</span>
83%
</div>
<div class="item df ac jc">
<i class="color-icon mr-3" style="background-color: #555555"></i>
<span class="bold mr-3">
C
</span>
17%
</div>
</div>
</div>
<a class="ui segment language-stats">
<div class="bar" style="width: 83%; background-color: #f34b7d">&nbsp;</div>
<div class="bar" style="width: 17%; background-color: #555555">&nbsp;</div>
</a>
</div>
<div class="ui stackable secondary menu mobile--margin-between-items mobile--no-negative-margins">
<div class="fitted item choose reference mr-1">
<div class="ui floating filter dropdown custom" data-can-create-branch="true" data-no-results="No results found.">
<div class="ui basic small compact button" @click="menuVisible = !menuVisible" @keyup.enter="menuVisible = !menuVisible">
<span class="text">
<svg viewBox="0 0 16 16" class="svg octicon-git-branch" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M11.75 2.5a.75.75 0 100 1.5.75.75 0 000-1.5zm-2.25.75a2.25 2.25 0 113 2.122V6A2.5 2.5 0 0110 8.5H6a1 1 0 00-1 1v1.128a2.251 2.251 0 11-1.5 0V5.372a2.25 2.25 0 111.5 0v1.836A2.492 2.492 0 016 7h4a1 1 0 001-1v-.628A2.25 2.25 0 019.5 3.25zM4.25 12a.75.75 0 100 1.5.75.75 0 000-1.5zM3.5 3.25a.75.75 0 111.5 0 .75.75 0 01-1.5 0z"/></svg>
Tree:
<strong>890f7690b3</strong>
</span>
<svg viewBox="0 0 16 16" class="dropdown icon svg octicon-triangle-down" width="14" height="14" aria-hidden="true"><path d="M4.427 7.427l3.396 3.396a.25.25 0 00.354 0l3.396-3.396A.25.25 0 0011.396 7H4.604a.25.25 0 00-.177.427z"/></svg>
</div>
<div class="data" style="display: none" data-mode="branches">
<div class="item branch " data-url="/dcoredump/MicroDexed/src/branch/dev/mixer8.h">dev</div>
<div class="item branch " data-url="/dcoredump/MicroDexed/src/branch/master/mixer8.h">master</div>
<div class="item tag " data-url="/dcoredump/MicroDexed/src/tag/1.0.15/mixer8.h">1.0.15</div>
</div>
<div class="menu transition" :class="{visible: menuVisible}" v-if="menuVisible" v-cloak>
<div class="ui icon search input">
<i class="icon df ac jc m-0"><svg viewBox="0 0 16 16" class="svg octicon-filter" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M.75 3a.75.75 0 000 1.5h14.5a.75.75 0 000-1.5H.75zM3 7.75A.75.75 0 013.75 7h8.5a.75.75 0 010 1.5h-8.5A.75.75 0 013 7.75zm3 4a.75.75 0 01.75-.75h2.5a.75.75 0 010 1.5h-2.5a.75.75 0 01-.75-.75z"/></svg></i>
<input name="search" ref="searchField" autocomplete="off" v-model="searchTerm" @keydown="keydown($event)" placeholder="Filter branch or tag...">
</div>
<div class="header branch-tag-choice">
<div class="ui grid">
<div class="two column row">
<a class="reference column" href="#" @click="createTag = false; mode = 'branches'; focusSearchField()">
<span class="text" :class="{black: mode == 'branches'}">
<svg viewBox="0 0 16 16" class="mr-2 svg octicon-git-branch" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M11.75 2.5a.75.75 0 100 1.5.75.75 0 000-1.5zm-2.25.75a2.25 2.25 0 113 2.122V6A2.5 2.5 0 0110 8.5H6a1 1 0 00-1 1v1.128a2.251 2.251 0 11-1.5 0V5.372a2.25 2.25 0 111.5 0v1.836A2.492 2.492 0 016 7h4a1 1 0 001-1v-.628A2.25 2.25 0 019.5 3.25zM4.25 12a.75.75 0 100 1.5.75.75 0 000-1.5zM3.5 3.25a.75.75 0 111.5 0 .75.75 0 01-1.5 0z"/></svg>Branches
</span>
</a>
<a class="reference column" href="#" @click="createTag = true; mode = 'tags'; focusSearchField()">
<span class="text" :class="{black: mode == 'tags'}">
<svg viewBox="0 0 16 16" class="mr-2 svg octicon-tag" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M2.5 7.775V2.75a.25.25 0 01.25-.25h5.025a.25.25 0 01.177.073l6.25 6.25a.25.25 0 010 .354l-5.025 5.025a.25.25 0 01-.354 0l-6.25-6.25a.25.25 0 01-.073-.177zm-1.5 0V2.75C1 1.784 1.784 1 2.75 1h5.025c.464 0 .91.184 1.238.513l6.25 6.25a1.75 1.75 0 010 2.474l-5.026 5.026a1.75 1.75 0 01-2.474 0l-6.25-6.25A1.75 1.75 0 011 7.775zM6 5a1 1 0 100 2 1 1 0 000-2z"/></svg>Tags
</span>
</a>
</div>
</div>
</div>
<div class="scrolling menu" ref="scrollContainer">
<div v-for="(item, index) in filteredItems" :key="item.name" class="item" :class="{selected: item.selected, active: active == index}" @click="selectItem(item)" :ref="'listItem' + index">${ item.name }</div>
<div class="item" v-if="showCreateNewBranch" :class="{active: active == filteredItems.length}" :ref="'listItem' + filteredItems.length">
<a href="#" @click="createNewBranch()">
<div v-show="createTag">
<i class="reference tags icon"></i>
Create tag <strong>${ searchTerm }</strong>
</div>
<div v-show="!createTag">
<svg viewBox="0 0 16 16" class="svg octicon-git-branch" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M11.75 2.5a.75.75 0 100 1.5.75.75 0 000-1.5zm-2.25.75a2.25 2.25 0 113 2.122V6A2.5 2.5 0 0110 8.5H6a1 1 0 00-1 1v1.128a2.251 2.251 0 11-1.5 0V5.372a2.25 2.25 0 111.5 0v1.836A2.492 2.492 0 016 7h4a1 1 0 001-1v-.628A2.25 2.25 0 019.5 3.25zM4.25 12a.75.75 0 100 1.5.75.75 0 000-1.5zM3.5 3.25a.75.75 0 111.5 0 .75.75 0 01-1.5 0z"/></svg>
Create branch <strong>${ searchTerm }</strong>
</div>
<div class="text small">
from &#39;890f7690b3&#39;
</div>
</a>
<form ref="newBranchForm" action="/dcoredump/MicroDexed/branches/_new/commit/890f7690b3bb6141fb4d8493c5f85a4cf2a3e51c" method="post">
<input type="hidden" name="_csrf" value="Itgfj3tDHFCZ_rdlaxlAdNfWuKA6MTYyNjk1MjMwNjM2MDM2NzQ4OA">
<input type="hidden" name="new_branch_name" v-model="searchTerm">
<input type="hidden" name="create_tag" v-model="createTag">
</form>
</div>
</div>
<div class="message" v-if="showNoResults">${ noResults }</div>
</div>
</div>
</div>
<div class="fitted item"><span class="ui breadcrumb repo-path"><a class="section" href="/dcoredump/MicroDexed/src/commit/890f7690b3bb6141fb4d8493c5f85a4cf2a3e51c" title="MicroDexed">MicroDexed</a><span class="divider">/</span><span class="active section" title="mixer8.h">mixer8.h</span></span></div>
<div class="right fitted item mr-0" id="file-buttons">
<div class="ui tiny primary buttons">
</div>
</div>
<div class="fitted item">
</div>
<div class="fitted item">
</div>
</div>
<div class="tab-size-8 non-diff-file-content">
<h4 class="file-header ui top attached header df ac sb">
<div class="file-header-left df ac">
<div class="file-info text grey normal mono">
<div class="file-info-entry">
69 lines
</div>
<div class="file-info-entry">
2.4 KiB
</div>
</div>
</div>
<div class="file-header-right file-actions df ac">
<div class="ui buttons mr-2">
<a class="ui mini basic button" href="/dcoredump/MicroDexed/raw/commit/890f7690b3bb6141fb4d8493c5f85a4cf2a3e51c/mixer8.h">Raw</a>
<a class="ui mini basic button" href="/dcoredump/MicroDexed/blame/commit/890f7690b3bb6141fb4d8493c5f85a4cf2a3e51c/mixer8.h">Blame</a>
<a class="ui mini basic button" href="/dcoredump/MicroDexed/commits/commit/890f7690b3bb6141fb4d8493c5f85a4cf2a3e51c/mixer8.h">History</a>
</div>
<span class="btn-octicon poping up disabled" data-content="You must be on a branch to make or propose changes to this file." data-position="bottom center" data-variation="tiny inverted"><svg viewBox="0 0 16 16" class="svg octicon-pencil" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M11.013 1.427a1.75 1.75 0 012.474 0l1.086 1.086a1.75 1.75 0 010 2.474l-8.61 8.61c-.21.21-.47.364-.756.445l-3.251.93a.75.75 0 01-.927-.928l.929-3.25a1.75 1.75 0 01.445-.758l8.61-8.61zm1.414 1.06a.25.25 0 00-.354 0L10.811 3.75l1.439 1.44 1.263-1.263a.25.25 0 000-.354l-1.086-1.086zM11.189 6.25L9.75 4.81l-6.286 6.287a.25.25 0 00-.064.108l-.558 1.953 1.953-.558a.249.249 0 00.108-.064l6.286-6.286z"/></svg></span>
<span class="btn-octicon poping up disabled" data-content="You must be on a branch to make or propose changes to this file." data-position="bottom center" data-variation="tiny inverted"><svg viewBox="0 0 16 16" class="svg octicon-trashcan" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M6.5 1.75a.25.25 0 01.25-.25h2.5a.25.25 0 01.25.25V3h-3V1.75zm4.5 0V3h2.25a.75.75 0 010 1.5H2.75a.75.75 0 010-1.5H5V1.75C5 .784 5.784 0 6.75 0h2.5C10.216 0 11 .784 11 1.75zM4.496 6.675a.75.75 0 10-1.492.15l.66 6.6A1.75 1.75 0 005.405 15h5.19c.9 0 1.652-.681 1.741-1.576l.66-6.6a.75.75 0 00-1.492-.149l-.66 6.6a.25.25 0 01-.249.225h-5.19a.25.25 0 01-.249-.225l-.66-6.6z"/></svg></span>
</div>
</h4>
<div class="ui attached table unstackable segment">
<div class="file-view code-view">
<table>
<tbody>
<tr>
<td id="L1" class="lines-num">
<span id="L1" data-line-number="1"></span>
</td>
<td rel="L1" class="lines-code chroma">
<code class="code-inner"><span class="cm">/* Audio Library for Teensy 3.X</code>
</td>
</tr>
<tr>
<td id="L2" class="lines-num">
<span id="L2" data-line-number="2"></span>
</td>
<td rel="L2" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> * Copyright (c) 2014, Paul Stoffregen, paul@pjrc.com</code>
</td>
</tr>
<tr>
<td id="L3" class="lines-num">
<span id="L3" data-line-number="3"></span>
</td>
<td rel="L3" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> *</code>
</td>
</tr>
<tr>
<td id="L4" class="lines-num">
<span id="L4" data-line-number="4"></span>
</td>
<td rel="L4" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> * Development of this audio library was funded by PJRC.COM, LLC by sales of</code>
</td>
</tr>
<tr>
<td id="L5" class="lines-num">
<span id="L5" data-line-number="5"></span>
</td>
<td rel="L5" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> * Teensy and Audio Adaptor boards. Please support PJRC&#39;s efforts to develop</code>
</td>
</tr>
<tr>
<td id="L6" class="lines-num">
<span id="L6" data-line-number="6"></span>
</td>
<td rel="L6" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> * open source software by purchasing Teensy or other PJRC products.</code>
</td>
</tr>
<tr>
<td id="L7" class="lines-num">
<span id="L7" data-line-number="7"></span>
</td>
<td rel="L7" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> *</code>
</td>
</tr>
<tr>
<td id="L8" class="lines-num">
<span id="L8" data-line-number="8"></span>
</td>
<td rel="L8" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> * Permission is hereby granted, free of charge, to any person obtaining a copy</code>
</td>
</tr>
<tr>
<td id="L9" class="lines-num">
<span id="L9" data-line-number="9"></span>
</td>
<td rel="L9" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> * of this software and associated documentation files (the &#34;Software&#34;), to deal</code>
</td>
</tr>
<tr>
<td id="L10" class="lines-num">
<span id="L10" data-line-number="10"></span>
</td>
<td rel="L10" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> * in the Software without restriction, including without limitation the rights</code>
</td>
</tr>
<tr>
<td id="L11" class="lines-num">
<span id="L11" data-line-number="11"></span>
</td>
<td rel="L11" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell</code>
</td>
</tr>
<tr>
<td id="L12" class="lines-num">
<span id="L12" data-line-number="12"></span>
</td>
<td rel="L12" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> * copies of the Software, and to permit persons to whom the Software is</code>
</td>
</tr>
<tr>
<td id="L13" class="lines-num">
<span id="L13" data-line-number="13"></span>
</td>
<td rel="L13" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> * furnished to do so, subject to the following conditions:</code>
</td>
</tr>
<tr>
<td id="L14" class="lines-num">
<span id="L14" data-line-number="14"></span>
</td>
<td rel="L14" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> *</code>
</td>
</tr>
<tr>
<td id="L15" class="lines-num">
<span id="L15" data-line-number="15"></span>
</td>
<td rel="L15" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> * The above copyright notice, development funding notice, and this permission</code>
</td>
</tr>
<tr>
<td id="L16" class="lines-num">
<span id="L16" data-line-number="16"></span>
</td>
<td rel="L16" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> * notice shall be included in all copies or substantial portions of the Software.</code>
</td>
</tr>
<tr>
<td id="L17" class="lines-num">
<span id="L17" data-line-number="17"></span>
</td>
<td rel="L17" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> *</code>
</td>
</tr>
<tr>
<td id="L18" class="lines-num">
<span id="L18" data-line-number="18"></span>
</td>
<td rel="L18" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> * THE SOFTWARE IS PROVIDED &#34;AS IS&#34;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR</code>
</td>
</tr>
<tr>
<td id="L19" class="lines-num">
<span id="L19" data-line-number="19"></span>
</td>
<td rel="L19" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,</code>
</td>
</tr>
<tr>
<td id="L20" class="lines-num">
<span id="L20" data-line-number="20"></span>
</td>
<td rel="L20" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE</code>
</td>
</tr>
<tr>
<td id="L21" class="lines-num">
<span id="L21" data-line-number="21"></span>
</td>
<td rel="L21" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER</code>
</td>
</tr>
<tr>
<td id="L22" class="lines-num">
<span id="L22" data-line-number="22"></span>
</td>
<td rel="L22" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,</code>
</td>
</tr>
<tr>
<td id="L23" class="lines-num">
<span id="L23" data-line-number="23"></span>
</td>
<td rel="L23" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN</code>
</td>
</tr>
<tr>
<td id="L24" class="lines-num">
<span id="L24" data-line-number="24"></span>
</td>
<td rel="L24" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> * THE SOFTWARE.</code>
</td>
</tr>
<tr>
<td id="L25" class="lines-num">
<span id="L25" data-line-number="25"></span>
</td>
<td rel="L25" class="lines-code chroma">
<code class="code-inner"></span><span class="cm"> */</span></code>
</td>
</tr>
<tr>
<td id="L26" class="lines-num">
<span id="L26" data-line-number="26"></span>
</td>
<td rel="L26" class="lines-code chroma">
<code class="code-inner">
</code>
</td>
</tr>
<tr>
<td id="L27" class="lines-num">
<span id="L27" data-line-number="27"></span>
</td>
<td rel="L27" class="lines-code chroma">
<code class="code-inner"><span class="cp">#</span><span class="cp">ifndef mixer8_h_</span><span class="cp"></code>
</td>
</tr>
<tr>
<td id="L28" class="lines-num">
<span id="L28" data-line-number="28"></span>
</td>
<td rel="L28" class="lines-code chroma">
<code class="code-inner"></span><span class="cp"></span><span class="cp">#</span><span class="cp">define mixer8_h_</span><span class="cp"></code>
</td>
</tr>
<tr>
<td id="L29" class="lines-num">
<span id="L29" data-line-number="29"></span>
</td>
<td rel="L29" class="lines-code chroma">
<code class="code-inner"></span><span class="cp"></span></code>
</td>
</tr>
<tr>
<td id="L30" class="lines-num">
<span id="L30" data-line-number="30"></span>
</td>
<td rel="L30" class="lines-code chroma">
<code class="code-inner"><span class="cp">#</span><span class="cp">include</span> <span class="cpf">&#34;Arduino.h&#34;</span><span class="cp"></code>
</td>
</tr>
<tr>
<td id="L31" class="lines-num">
<span id="L31" data-line-number="31"></span>
</td>
<td rel="L31" class="lines-code chroma">
<code class="code-inner"></span><span class="cp"></span><span class="cp">#</span><span class="cp">include</span> <span class="cpf">&#34;AudioStream.h&#34;</span><span class="cp"></code>
</td>
</tr>
<tr>
<td id="L32" class="lines-num">
<span id="L32" data-line-number="32"></span>
</td>
<td rel="L32" class="lines-code chroma">
<code class="code-inner"></span><span class="cp"></span></code>
</td>
</tr>
<tr>
<td id="L33" class="lines-num">
<span id="L33" data-line-number="33"></span>
</td>
<td rel="L33" class="lines-code chroma">
<code class="code-inner"><span class="k">class</span> <span class="nc">AudioMixer8</span> <span class="o">:</span> <span class="k">public</span> <span class="n">AudioStream</span></code>
</td>
</tr>
<tr>
<td id="L34" class="lines-num">
<span id="L34" data-line-number="34"></span>
</td>
<td rel="L34" class="lines-code chroma">
<code class="code-inner"><span class="p">{</span></code>
</td>
</tr>
<tr>
<td id="L35" class="lines-num">
<span id="L35" data-line-number="35"></span>
</td>
<td rel="L35" class="lines-code chroma">
<code class="code-inner"><span class="cp">#</span><span class="cp">if defined(__ARM_ARCH_7EM__)</span><span class="cp"></code>
</td>
</tr>
<tr>
<td id="L36" class="lines-num">
<span id="L36" data-line-number="36"></span>
</td>
<td rel="L36" class="lines-code chroma">
<code class="code-inner"></span><span class="cp"></span><span class="k">public</span><span class="o">:</span></code>
</td>
</tr>
<tr>
<td id="L37" class="lines-num">
<span id="L37" data-line-number="37"></span>
</td>
<td rel="L37" class="lines-code chroma">
<code class="code-inner"> <span class="n">AudioMixer8</span><span class="p">(</span><span class="kt">void</span><span class="p">)</span> <span class="o">:</span> <span class="n">AudioStream</span><span class="p">(</span><span class="mi">8</span><span class="p">,</span> <span class="n">inputQueueArray</span><span class="p">)</span> <span class="p">{</span></code>
</td>
</tr>
<tr>
<td id="L38" class="lines-num">
<span id="L38" data-line-number="38"></span>
</td>
<td rel="L38" class="lines-code chroma">
<code class="code-inner"> <span class="k">for</span> <span class="p">(</span><span class="kt">int</span> <span class="n">i</span><span class="o">=</span><span class="mi">0</span><span class="p">;</span> <span class="n">i</span><span class="o">&lt;</span><span class="mi">8</span><span class="p">;</span> <span class="n">i</span><span class="o">+</span><span class="o">+</span><span class="p">)</span> <span class="n">multiplier</span><span class="p">[</span><span class="n">i</span><span class="p">]</span> <span class="o">=</span> <span class="mi">65536</span><span class="p">;</span></code>
</td>
</tr>
<tr>
<td id="L39" class="lines-num">
<span id="L39" data-line-number="39"></span>
</td>
<td rel="L39" class="lines-code chroma">
<code class="code-inner"> <span class="p">}</span></code>
</td>
</tr>
<tr>
<td id="L40" class="lines-num">
<span id="L40" data-line-number="40"></span>
</td>
<td rel="L40" class="lines-code chroma">
<code class="code-inner"> <span class="k">virtual</span> <span class="kt">void</span> <span class="nf">update</span><span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="p">;</span></code>
</td>
</tr>
<tr>
<td id="L41" class="lines-num">
<span id="L41" data-line-number="41"></span>
</td>
<td rel="L41" class="lines-code chroma">
<code class="code-inner"> <span class="kt">void</span> <span class="nf">gain</span><span class="p">(</span><span class="kt">unsigned</span> <span class="kt">int</span> <span class="n">channel</span><span class="p">,</span> <span class="kt">float</span> <span class="n">gain</span><span class="p">)</span> <span class="p">{</span></code>
</td>
</tr>
<tr>
<td id="L42" class="lines-num">
<span id="L42" data-line-number="42"></span>
</td>
<td rel="L42" class="lines-code chroma">
<code class="code-inner"> <span class="k">if</span> <span class="p">(</span><span class="n">channel</span> <span class="o">&gt;</span><span class="o">=</span> <span class="mi">8</span><span class="p">)</span> <span class="k">return</span><span class="p">;</span></code>
</td>
</tr>
<tr>
<td id="L43" class="lines-num">
<span id="L43" data-line-number="43"></span>
</td>
<td rel="L43" class="lines-code chroma">
<code class="code-inner"> <span class="k">if</span> <span class="p">(</span><span class="n">gain</span> <span class="o">&gt;</span> <span class="mf">32767.0f</span><span class="p">)</span> <span class="n">gain</span> <span class="o">=</span> <span class="mf">32767.0f</span><span class="p">;</span></code>
</td>
</tr>
<tr>
<td id="L44" class="lines-num">
<span id="L44" data-line-number="44"></span>
</td>
<td rel="L44" class="lines-code chroma">
<code class="code-inner"> <span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="n">gain</span> <span class="o">&lt;</span> <span class="o">-</span><span class="mf">32767.0f</span><span class="p">)</span> <span class="n">gain</span> <span class="o">=</span> <span class="o">-</span><span class="mf">32767.0f</span><span class="p">;</span></code>
</td>
</tr>
<tr>
<td id="L45" class="lines-num">
<span id="L45" data-line-number="45"></span>
</td>
<td rel="L45" class="lines-code chroma">
<code class="code-inner"> <span class="n">multiplier</span><span class="p">[</span><span class="n">channel</span><span class="p">]</span> <span class="o">=</span> <span class="n">gain</span> <span class="o">*</span> <span class="mf">65536.0f</span><span class="p">;</span> <span class="c1">// TODO: proper roundoff?</code>
</td>
</tr>
<tr>
<td id="L46" class="lines-num">
<span id="L46" data-line-number="46"></span>
</td>
<td rel="L46" class="lines-code chroma">
<code class="code-inner"></span><span class="c1"></span> <span class="p">}</span></code>
</td>
</tr>
<tr>
<td id="L47" class="lines-num">
<span id="L47" data-line-number="47"></span>
</td>
<td rel="L47" class="lines-code chroma">
<code class="code-inner"><span class="k">private</span><span class="o">:</span></code>
</td>
</tr>
<tr>
<td id="L48" class="lines-num">
<span id="L48" data-line-number="48"></span>
</td>
<td rel="L48" class="lines-code chroma">
<code class="code-inner"> <span class="kt">int32_t</span> <span class="n">multiplier</span><span class="p">[</span><span class="mi">8</span><span class="p">]</span><span class="p">;</span></code>
</td>
</tr>
<tr>
<td id="L49" class="lines-num">
<span id="L49" data-line-number="49"></span>
</td>
<td rel="L49" class="lines-code chroma">
<code class="code-inner"> <span class="n">audio_block_t</span> <span class="o">*</span><span class="n">inputQueueArray</span><span class="p">[</span><span class="mi">8</span><span class="p">]</span><span class="p">;</span></code>
</td>
</tr>
<tr>
<td id="L50" class="lines-num">
<span id="L50" data-line-number="50"></span>
</td>
<td rel="L50" class="lines-code chroma">
<code class="code-inner">
</code>
</td>
</tr>
<tr>
<td id="L51" class="lines-num">
<span id="L51" data-line-number="51"></span>
</td>
<td rel="L51" class="lines-code chroma">
<code class="code-inner"><span class="cp">#</span><span class="cp">elif defined(KINETISL)</span><span class="cp"></code>
</td>
</tr>
<tr>
<td id="L52" class="lines-num">
<span id="L52" data-line-number="52"></span>
</td>
<td rel="L52" class="lines-code chroma">
<code class="code-inner"></span><span class="cp"></span><span class="k">public</span><span class="o">:</span></code>
</td>
</tr>
<tr>
<td id="L53" class="lines-num">
<span id="L53" data-line-number="53"></span>
</td>
<td rel="L53" class="lines-code chroma">
<code class="code-inner"> <span class="n">AudioMixer8</span><span class="p">(</span><span class="kt">void</span><span class="p">)</span> <span class="o">:</span> <span class="n">AudioStream</span><span class="p">(</span><span class="mi">8</span><span class="p">,</span> <span class="n">inputQueueArray</span><span class="p">)</span> <span class="p">{</span></code>
</td>
</tr>
<tr>
<td id="L54" class="lines-num">
<span id="L54" data-line-number="54"></span>
</td>
<td rel="L54" class="lines-code chroma">
<code class="code-inner"> <span class="k">for</span> <span class="p">(</span><span class="kt">int</span> <span class="n">i</span><span class="o">=</span><span class="mi">0</span><span class="p">;</span> <span class="n">i</span><span class="o">&lt;</span><span class="mi">8</span><span class="p">;</span> <span class="n">i</span><span class="o">+</span><span class="o">+</span><span class="p">)</span> <span class="n">multiplier</span><span class="p">[</span><span class="n">i</span><span class="p">]</span> <span class="o">=</span> <span class="mi">256</span><span class="p">;</span></code>
</td>
</tr>
<tr>
<td id="L55" class="lines-num">
<span id="L55" data-line-number="55"></span>
</td>
<td rel="L55" class="lines-code chroma">
<code class="code-inner"> <span class="p">}</span></code>
</td>
</tr>
<tr>
<td id="L56" class="lines-num">
<span id="L56" data-line-number="56"></span>
</td>
<td rel="L56" class="lines-code chroma">
<code class="code-inner"> <span class="k">virtual</span> <span class="kt">void</span> <span class="nf">update</span><span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="p">;</span></code>
</td>
</tr>
<tr>
<td id="L57" class="lines-num">
<span id="L57" data-line-number="57"></span>
</td>
<td rel="L57" class="lines-code chroma">
<code class="code-inner"> <span class="kt">void</span> <span class="nf">gain</span><span class="p">(</span><span class="kt">unsigned</span> <span class="kt">int</span> <span class="n">channel</span><span class="p">,</span> <span class="kt">float</span> <span class="n">gain</span><span class="p">)</span> <span class="p">{</span></code>
</td>
</tr>
<tr>
<td id="L58" class="lines-num">
<span id="L58" data-line-number="58"></span>
</td>
<td rel="L58" class="lines-code chroma">
<code class="code-inner"> <span class="k">if</span> <span class="p">(</span><span class="n">channel</span> <span class="o">&gt;</span><span class="o">=</span> <span class="mi">8</span><span class="p">)</span> <span class="k">return</span><span class="p">;</span></code>
</td>
</tr>
<tr>
<td id="L59" class="lines-num">
<span id="L59" data-line-number="59"></span>
</td>
<td rel="L59" class="lines-code chroma">
<code class="code-inner"> <span class="k">if</span> <span class="p">(</span><span class="n">gain</span> <span class="o">&gt;</span> <span class="mf">127.0f</span><span class="p">)</span> <span class="n">gain</span> <span class="o">=</span> <span class="mf">127.0f</span><span class="p">;</span></code>
</td>
</tr>
<tr>
<td id="L60" class="lines-num">
<span id="L60" data-line-number="60"></span>
</td>
<td rel="L60" class="lines-code chroma">
<code class="code-inner"> <span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="n">gain</span> <span class="o">&lt;</span> <span class="o">-</span><span class="mf">127.0f</span><span class="p">)</span> <span class="n">gain</span> <span class="o">=</span> <span class="o">-</span><span class="mf">127.0f</span><span class="p">;</span></code>
</td>
</tr>
<tr>
<td id="L61" class="lines-num">
<span id="L61" data-line-number="61"></span>
</td>
<td rel="L61" class="lines-code chroma">
<code class="code-inner"> <span class="n">multiplier</span><span class="p">[</span><span class="n">channel</span><span class="p">]</span> <span class="o">=</span> <span class="n">gain</span> <span class="o">*</span> <span class="mf">256.0f</span><span class="p">;</span> <span class="c1">// TODO: proper roundoff?</code>
</td>
</tr>
<tr>
<td id="L62" class="lines-num">
<span id="L62" data-line-number="62"></span>
</td>
<td rel="L62" class="lines-code chroma">
<code class="code-inner"></span><span class="c1"></span> <span class="p">}</span></code>
</td>
</tr>
<tr>
<td id="L63" class="lines-num">
<span id="L63" data-line-number="63"></span>
</td>
<td rel="L63" class="lines-code chroma">
<code class="code-inner"><span class="k">private</span><span class="o">:</span></code>
</td>
</tr>
<tr>
<td id="L64" class="lines-num">
<span id="L64" data-line-number="64"></span>
</td>
<td rel="L64" class="lines-code chroma">
<code class="code-inner"> <span class="kt">int16_t</span> <span class="n">multiplier</span><span class="p">[</span><span class="mi">8</span><span class="p">]</span><span class="p">;</span></code>
</td>
</tr>
<tr>
<td id="L65" class="lines-num">
<span id="L65" data-line-number="65"></span>
</td>
<td rel="L65" class="lines-code chroma">
<code class="code-inner"> <span class="n">audio_block_t</span> <span class="o">*</span><span class="n">inputQueueArray</span><span class="p">[</span><span class="mi">8</span><span class="p">]</span><span class="p">;</span></code>
</td>
</tr>
<tr>
<td id="L66" class="lines-num">
<span id="L66" data-line-number="66"></span>
</td>
<td rel="L66" class="lines-code chroma">
<code class="code-inner"><span class="cp">#</span><span class="cp">endif</span><span class="cp"></code>
</td>
</tr>
<tr>
<td id="L67" class="lines-num">
<span id="L67" data-line-number="67"></span>
</td>
<td rel="L67" class="lines-code chroma">
<code class="code-inner"></span><span class="cp"></span><span class="p">}</span><span class="p">;</span></code>
</td>
</tr>
<tr>
<td id="L68" class="lines-num">
<span id="L68" data-line-number="68"></span>
</td>
<td rel="L68" class="lines-code chroma">
<code class="code-inner">
</code>
</td>
</tr>
<tr>
<td id="L69" class="lines-num">
<span id="L69" data-line-number="69"></span>
</td>
<td rel="L69" class="lines-code chroma">
<code class="code-inner"><span class="cp">#</span><span class="cp">endif</span><span class="cp">
</span></code>
</td>
</tr>
</tbody>
</table>
<div class="code-view-menu-list ui fluid popup transition hidden">
<div class="ui column relaxed equal height">
<div class="column">
<div class="ui link list">
<a class="item ref-in-new-issue" href="/dcoredump/MicroDexed/issues/new?body=https%3a%2f%2fcodeberg.org%2fdcoredump%2fMicroDexed/src/commit/890f7690b3bb6141fb4d8493c5f85a4cf2a3e51c/mixer8.h">Reference in new issue</a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<script>
function submitDeleteForm() {
var message = prompt("delete_confirm_message\n\ndelete_commit_summary", "Delete ''");
if (message != null) {
$("#delete-message").val(message);
$("#delete-file-form").submit()
}
}
</script>
</div>
</div>
</div>
<footer>
<div class="ui container">
<div class="ui left">
</div>
<div class="ui right links">
<div class="ui language bottom floating slide up dropdown link item">
<svg viewBox="0 0 16 16" class="svg octicon-globe" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M1.543 7.25h2.733c.144-2.074.866-3.756 1.58-4.948.12-.197.237-.381.353-.552a6.506 6.506 0 00-4.666 5.5zm2.733 1.5H1.543a6.506 6.506 0 004.666 5.5 11.13 11.13 0 01-.352-.552c-.715-1.192-1.437-2.874-1.581-4.948zm1.504 0h4.44a9.637 9.637 0 01-1.363 4.177c-.306.51-.612.919-.857 1.215a9.978 9.978 0 01-.857-1.215A9.637 9.637 0 015.78 8.75zm4.44-1.5H5.78a9.637 9.637 0 011.363-4.177c.306-.51.612-.919.857-1.215.245.296.55.705.857 1.215A9.638 9.638 0 0110.22 7.25zm1.504 1.5c-.144 2.074-.866 3.756-1.58 4.948-.12.197-.237.381-.353.552a6.506 6.506 0 004.666-5.5h-2.733zm2.733-1.5h-2.733c-.144-2.074-.866-3.756-1.58-4.948a11.738 11.738 0 00-.353-.552 6.506 6.506 0 014.666 5.5zM8 0a8 8 0 100 16A8 8 0 008 0z"/></svg>
<div class="text">English</div>
<div class="menu language-menu">
<a lang="en-US" data-url="/?lang=en-US" class="item active selected">English</a>
<a lang="zh-CN" data-url="/?lang=zh-CN" class="item "></a>
<a lang="zh-HK" data-url="/?lang=zh-HK" class="item "></a>
<a lang="zh-TW" data-url="/?lang=zh-TW" class="item "></a>
<a lang="de-DE" data-url="/?lang=de-DE" class="item ">Deutsch</a>
<a lang="fr-FR" data-url="/?lang=fr-FR" class="item ">français</a>
<a lang="nl-NL" data-url="/?lang=nl-NL" class="item ">Nederlands</a>
<a lang="lv-LV" data-url="/?lang=lv-LV" class="item ">latviešu</a>
<a lang="ru-RU" data-url="/?lang=ru-RU" class="item ">русский</a>
<a lang="uk-UA" data-url="/?lang=uk-UA" class="item ">Українська</a>
<a lang="ja-JP" data-url="/?lang=ja-JP" class="item "></a>
<a lang="es-ES" data-url="/?lang=es-ES" class="item ">español</a>
<a lang="pt-BR" data-url="/?lang=pt-BR" class="item ">português do Brasil</a>
<a lang="pt-PT" data-url="/?lang=pt-PT" class="item ">Português de Portugal</a>
<a lang="pl-PL" data-url="/?lang=pl-PL" class="item ">polski</a>
<a lang="bg-BG" data-url="/?lang=bg-BG" class="item ">български</a>
<a lang="it-IT" data-url="/?lang=it-IT" class="item ">italiano</a>
<a lang="fi-FI" data-url="/?lang=fi-FI" class="item ">suomi</a>
<a lang="tr-TR" data-url="/?lang=tr-TR" class="item ">Türkçe</a>
<a lang="cs-CZ" data-url="/?lang=cs-CZ" class="item ">čeština</a>
<a lang="sr-SP" data-url="/?lang=sr-SP" class="item ">српски</a>
<a lang="sv-SE" data-url="/?lang=sv-SE" class="item ">svenska</a>
<a lang="ko-KR" data-url="/?lang=ko-KR" class="item "></a>
</div>
</div>
<a href="/js/licenses.txt" data-jslicense="1">JavaScript licenses</a>
<a target="_blank" rel="noopener" href="/codeberg/org/src/branch/master/PrivacyPolicy.md">Privacy Policy</a>
<a target="_blank" rel="noopener" href="/codeberg/org/src/branch/master/Satzung.md">Bylaws/Satzung</a>
<a target="_blank" rel="noopener" href="/codeberg/org/src/branch/master/Imprint.md">Imprint/Impressum</a>
<a target="_blank" rel="noopener" href="/codeberg/org/src/branch/master/TermsOfUse.md">Terms of Use</a>
<a target="_blank" rel="noopener" href="mailto:abuse@codeberg.org">Report Abuse</a>
</div>
</div>
</footer>
<script src="/js/index.js?v=4bc575e61ec5cecc0dc51306bc8af93b"></script>
</body>
</html>