Compare commits

..
8 Commits
Author SHA1 Message Date
RuiFPB fb097a0c49 Fix scaling issues on some windows
Build and Test / build (push) Successful in 1m7s
Release / release (push) Successful in 59s
2026-10-02 19:30:07 +01:00
RuiFPB 3ee3a7e300 Add release action
Build and Test / build (push) Successful in 1m5s
Release / release (push) Successful in 1m6s
2026-09-29 13:44:53 +01:00
RuiFPB b2810fa062 Add missing mike42 machine flag to run options
Build and Test / build (push) Successful in 1m3s
2026-09-29 12:15:37 +01:00
RuiFPB c9f9121477 Add install maven step (gitea actions
Build and Test / build (push) Successful in 1m2s
2026-09-29 01:05:01 +01:00
RuiFPB 91ef70fe4e Disable maven cache on jdk setup (gitea actions)
Build and Test / build (push) Failing after 22s
2026-09-29 01:02:24 +01:00
RuiFPB 69bf418f43 Set container image to use to run the pipeline
Build and Test / build (push) Canceled after 10m40s
2026-09-29 00:51:56 +01:00
RuiFPB 540f0dff58 Add gitea action build pipeline 2026-09-29 00:46:42 +01:00
RuiFPB 17668e2c3c Only run X11 resource reader if on Linux 2026-09-28 10:24:02 +01:00
9 changed files with 88 additions and 11 deletions

No files matched your search

+36
View File
@@ -0,0 +1,36 @@
name: Build and Test
on:
push:
branches:
- master
pull_request:
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
container:
image: catthehacker/ubuntu:act-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup JDK
uses: actions/setup-java@v6
with:
distribution: temurin
java-version: '21'
#cache: maven
- name: Install Maven
run: apt-get update && apt-get install -y maven
- name: Test and package
run: mvn -B verify
- name: Upload jar
uses: actions/upload-artifact@v3
with:
name: package
path: target/*.jar
+33
View File
@@ -0,0 +1,33 @@
name: Release
on:
push:
tags:
- 'v*'
jobs:
release:
runs-on: ubuntu-latest
container:
image: catthehacker/ubuntu:act-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup JDK
uses: actions/setup-java@v6
with:
distribution: temurin
java-version: '21'
- name: Install Maven
run: apt-get update && apt-get install -y maven
- name: Package
run: mvn -B verify
- name: Create release
uses: https://gitea.com/actions/gitea-release-action@v1
with:
files: |-
target/symon*.jar
+1 -1
View File
@@ -1,7 +1,7 @@
kSYMON - A 6502 System Simulator
===============================
**Version:** 1.5.1k
**Version:** 1.5.1.1k
**Last Updated:** 24 September, 2026
+1 -1
View File
@@ -5,7 +5,7 @@
<groupId>com.loomcom.symon</groupId>
<artifactId>symon</artifactId>
<packaging>jar</packaging>
<version>1.5.1k</version>
<version>1.5.1.1k</version>
<name>symon</name>
<url>https://git.loomcom.com/seth/symon</url>
<properties>
@@ -86,6 +86,9 @@ public class Main {
case "beneater":
machineClass = BenEaterMachine.class;
break;
case "mike42":
machineClass = MichaelBillingtonMachine.class;
break;
default:
logger.error("Could not start Symon. Unknown machine type {}", machine);
return;
@@ -23,6 +23,7 @@
package com.loomcom.symon.ui;
import com.formdev.flatlaf.util.UIScale;
import com.loomcom.symon.Breakpoints;
import com.loomcom.symon.util.Utils;
import org.slf4j.Logger;
@@ -40,7 +41,7 @@ public class BreakpointsWindow extends JFrame {
private static final Logger logger = LoggerFactory.getLogger(BreakpointsWindow.class);
private static final Dimension FRAME_SIZE = new Dimension(240, 280);
private static final Dimension FRAME_SIZE = UIScale.scale(new Dimension(240, 280));
private static final String EMPTY_STRING = "";
private final JFrame mainWindow;
@@ -23,6 +23,7 @@
package com.loomcom.symon.ui;
import com.formdev.flatlaf.util.UIScale;
import com.loomcom.symon.Bus;
import com.loomcom.symon.exceptions.MemoryAccessException;
import com.loomcom.symon.util.Utils;
@@ -55,15 +56,15 @@ public class MemoryWindow extends JFrame implements ActionListener {
private JButton previousPageButton;
private JButton nextPageButton;
private static final Dimension MINIMUM_SIZE = new Dimension(320, 600);
private static final Dimension MINIMUM_SIZE = UIScale.scale(new Dimension(400, 600));
// The width of column 0 (address), in pixels
private static final int ADDR_COL_WIDTH = 48;
private static final int ADDR_COL_WIDTH = UIScale.scale(64);
private static final int HEX_COL_WIDTH = 32;
private static final int HEX_COL_WIDTH = UIScale.scale(32);
// The width of the ASCII cells, in pixels
private static final int ASCII_COL_WIDTH = 8;
private static final int ASCII_COL_WIDTH = UIScale.scale(15);
// The start/end columns of the ASCII view
private static final int ASCII_COL_START = 9;
@@ -24,6 +24,7 @@
package com.loomcom.symon.ui;
import com.formdev.flatlaf.util.UIScale;
import com.loomcom.symon.CpuState;
import com.loomcom.symon.util.FifoRingBuffer;
@@ -39,8 +40,8 @@ public class TraceLog extends JFrame {
private final FifoRingBuffer<CpuState> traceLog;
private final JTextArea traceLogTextArea;
private static final Dimension MIN_SIZE = new Dimension(320, 200);
private static final Dimension PREFERRED_SIZE = new Dimension(640, 480);
private static final Dimension MIN_SIZE = UIScale.scale(new Dimension(320, 200));
private static final Dimension PREFERRED_SIZE = UIScale.scale(new Dimension(640, 480));
private static final int MAX_LOG_LENGTH = 50000;
public TraceLog() {
@@ -53,7 +54,7 @@ public class TraceLog extends JFrame {
setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
traceLogTextArea = new JTextArea();
traceLogTextArea.setFont(new Font(Font.MONOSPACED, Font.BOLD, 12));
traceLogTextArea.setFont(new Font(Font.MONOSPACED, Font.BOLD, UIScale.scale(12)));
traceLogTextArea.setEditable(false);
JScrollPane scrollableView = new JScrollPane(traceLogTextArea);
+3 -1
View File
@@ -132,7 +132,9 @@ public final class Ui {
}
private static void applyDetectedUiScale() {
Double rawScale = X11ResourceReader.readXftDpiScale(); // ex: 1.5, 2.0, 2.5...
Double rawScale = null;
if (SystemInfo.isLinux) rawScale = X11ResourceReader.readXftDpiScale(); // ex: 1.5, 2.0, 2.5...
if (rawScale != null && rawScale > 1.0) {
// flatlaf.uiScale aceita frações — mantém a precisão original